Skip to main content

Apple phone interview 12/11/17

Apple's Customer Systems Group designs systems and engineering support solutions for Retail Stores, AppleCare Repair & Distribution Centers and Channel Service Providers to enable end-to-end product and service support for Apple customers around the world.

Job Summary

Imagine what you could do here. At Apple, great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. Internet Apps has an immediate opening for a DevOps Engineer. The successful candidate will enjoy using technology to automate solutions and optimize outcomes, implementing continuous integration and deployment in a challenging and fast paced environment.
Key Qualifications

Expert knowledge and experience with software version control systems: SVN, GIT (GitHub/Gitlab), etc
Knowledge of Java build systems and tools including: Gradle, Maven, Ant, SBT, etc.
Setup, and automation of relational DB artifacts
Hands-on in scripting languages, Java and RDBMS (Oracle/MySQL) skills -Working knowledge of containerization (Docker), and supporting technologies -Experience with Orchestration tools like Mesos, Marathon, Aurora -Knowledge of virtualization technologies like VMWare ESXi, Vagrant, KVM -Knowledge of webServers and loadBalancers Apache HTTP Server, Apache Traffic Server, Nginx, HAProxy
Experience working with server clusters consisting of 100s-1000s of machines, and deploying changing with zero downtime
Experience maintaining automated build systems such as Jenkins, Bamboo, TeamCity or RunDeck
A desire to write tools and applications to automate work rather then do everything by hand
Familiarity with Splunk for investigating or monitoring problems on systems. -Experience maintaining large clusters using configuration tools such as:
Puppet, Chef, Salt, Ansible etc.
UNIX and Linux system administration experience: ssh, monitoring processes,
attaching storage, cleaning disk space, tailing logs, etc.
Experience implementing Continuous Integration and Delivery processes in large engineering teams
Ability to use and create web applications using REST, JSON, or similar protocols.
Experience test frameworks such as JUnit, TestNG and integrating test automation into Devops pipeline
Knowledge of Java code coverage Tools: Jacoco, Sonar, or Clover
Experience implementing Java server applications using tools such as: Jersey, Jetty, ZooKeeper, JDBC, using cloud deployment tools
Experience with releasing and managing of NoSQL, Hadoop, Kafka -Work experience with Agile/Scrum
Self-motivated, pro-active and solution-oriented individual
Must have good oral/written communication skills
Description

Analyze the technology options/feasibility and define the build, delivery, and deployment pipeline for applications Provide leadership in implementing a secure, robust and high availability DevOps pipeline Automate build & deployment processes Work closely with engineers, QA, project managers throughout the software lifecycle in successfully delivering best in class, large scale systems Implement push button deployment at scale with zero downtime
--------------------------------------------------------------------------------

This is to confirm your phone interview for the Sr. DevOps Engineer role with our Customer Systems Engineering team.

As for clarity on the role, scope of work and what to prepare for, please see below.
Managing and automating builds and deployments.
Building scripts, tools, and other services to improve developer productivity.
Using various open source tools & technologies to automate solutions and optimize outcomes, implementing continuous integration and deployment in a challenging and fast paced environment.

Skills/Technologies: Linux, Git, Maven, Jenkins, Bash, Python, Ansible, Artifactory, Junit, Nginx, Docker, Mongo, Kafka, Distributed Systems
================================================
12/11/17

# team lead, Kapil Bhalla
https://www.linkedin.com/in/bhallakapil/

Global CRM (GCRM)
mutiple channel support system:
email, phone, chat, etc.

various devices
password issue

he is in backend services
there are front end tool team

micro service based architecture

high user base

up and running and scalable

sre + devops
    best practices, tests
    monitoring/alert

pretty challenging and demanding
first line of support

# Apply configuration.txt to template.txt where

# template.txt contains:
# property = placeholder
# property1 = placeholder1

# configuration.txt contains
# placeholder = actual_value
# placeholder1 = actual_value1
# placeholder2 = actual_value2


# result config.txt
# property = actual_value
# property1 = actual_value1

#!/usr/bin/env python

import re

template = {} 
conofig = {}

result = {}

pattern = re.compile(\w\s\=\s\w).groups()

with open("template.txt", "r") as tfile:
    for line in tfile:
        match = pattern.match(line)
        property, placeholder = match.group[1], pattern.group[2]
        template[property] = placeholder

with open("configuration.txt", "r") as cfile:
    for line in cfile:
        match = pattern.match(line)
        placeholder, actual_value = group.group[1], pattern.group[2]
        config[placeholder] = actual_value
        
# template[property] = placeholder
# config[placeholder] = actual_value
# ==> config[template[property] = act_val

for k1, v1 in template:
    for k2, v2 in config:
        if v1 == k2:
            result[k1] = v2
            

# dictionary compresion
result = {k1: v2 for k1, v1 in template for k2, v2 in config if k1 == v2}
        
with open("config.txt", "w") as rfile:
    

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...