Nailing that "DevOps" interview

an anti-guide

 

Nir Cohen

@thinkops

http://goo.gl/6HEJpD

"There is no talent shortage"

(Andrew Clay-Shafer)

http://goo.gl/B7EhHz

Build Cathedrals

Supply an environment to grow in.

(Purpose)

"We don't know if there's a talent shortage or not"

Recruiters don't know what they need to be looking for.

Job seekers are not presenting themselves correctly.

Web Operations Blowout

Shift in Ops

"DevOps Engineer"

5th Anniversary of DevOpsDays

Configuration Management?

Continuous Delivery?

Automation?

Culture?

Tools?

?

DevOp
Requirements
The desired candidate will have B.Sc from 4 years of college or university, 
at least 10 years of infrastructure development experience and/or training, along with:
– 3+ years of AWS experience.
– 5-7 years of general DevOps/WS/DB/infrastructure experience.
– Practical experience with most if not all components of AWS: 
EC2, Beanstalk, ELB, Route53, S3, Cloudfront, SNS, SWF, SQS, RDS, 
DynamoDB, ElastiCache, IAM, CloudFormation.
– Familiarity with SOA principles and practice.
– Experience reading, analyzing, and absorbing AWS white papers,
architectural documents, and technical briefs.
– Service rollout plus complete multi-cycle SDLC experience,
using Chef, Puppet, CloudFormation, etc.
– Exposure to AWS auxiliary tools and practices (e.g., Chaos Monkey, Asgard, etc).
– Hands-on experience with monitoring tools, intrusion detection mechanisms,
and vulnerability assessment tools and practices.
– General scripting wizardry.
– Self-motivated team player who demonstrates initiative and flexibility.
– Strong organizational skills, with the ability to handle and prioritize multiple tasks.

Additional preferred skills
Beyond the requirements above, the preferred candidate will have:
– Familiarity with iTunes/App Store fundamentals.
– SQL and NoSQL experience.
– Familiarity with JDBC and various flavors of SQL/NoSQL.
– Experience designing solutions for access control, user authentication,
and service security in general.
– Strong verbal and written communication skills.

I'm not an HR expert

What I do know

"DevOps Engineers" seem to be a scarce resource.

Countless resumes

Hundreds of job descriptions

 

Lots of contexts

Suggest Common Mistakes

Offer Questions

Not specific to DevOps

Mistake No. 0

Recruiters are posting job descriptions of professionals who do not exist*

"Operations Engineer" is a new profession

Design

Build

Monitor

Analyze

Maintain!

complex, potentially large scale, highly available production environment.

You'd rather find and pay someone who knows everything than 5 who know something.

Do you expect someone to become an expert in all of these in just 3-4 years of practice?

Don't you think the best ones are already taken?

I want the best!

Don't you think everyone else is doing the exact same thing?

I'll wait...

I'm looking for candidates with a degree from a major university

Is there an institute in which you can learn how to monitor a system?

I want someone with at least x years of experience in...

4 is better than 2?

Can't someone be really bad for 5 years?

intelligent sysadmin + 3 years of coding experience = complicated?

Tools and systems are interchangeable

Could you say that about engineers?

who possess strong architectural skills?

who have the ability to understand what's important to make a system provide a solution for your business?
 

who are good collaborators and communicators?

Recruiters are asking the wrong questions in interviews

Mistake No. 1

Considering how wide the new roles are, should you expect that they...

remember how to configure a GRE Tunnel in Junos (http://goo.gl/5oBpRV)

remember which port Kerberos requires (http://goo.gl/aZ8cFi)

remember how to move a zone file between DNS servers (http://goo.gl/Z2QR0r)

Answer: "Give me a laptop and i'll tell you"

Wouldn't you do that anyway?

Wouldn't you expect them to?

And shouldn't the question have been phrased differently?

"What process will you go through to learn how to........................?"

Are there any 2 similar systems?

Job seekers are presenting the wrong traits in their resumes

Mistake No. 2

Self-motivated DevOps Engineer with over 3.8 years of IT experience in Systems Engineering, 
Development and Operations. Esteemed to work on Free/Open Source Software.

Technical Skillset Summary
1. System Administration : GNU/Linux (Debian, Ubuntu, Arch, CentOS, Redhat and Zentyal)
2. Virtualization and Cloud Services : LXC, KVM, OpenVZ, AWS, Droplets and CPanel.
3. Configuration/Build and Release : Ansible, Make, Projspace, Go(learning), Chef(learning)
4. Programming Languages : Python, Ruby(learning) , Shell Scripting, C, C++ and Java
5. Database and Directory Services : OpenLDAP, Mysql, MariaDB
6. Version Control Systems : GIT, Bazaar, Subversion, GitLab
7. Networking Tools/Services : Nagios, ntop, SSH, DHCP, DNS, FTP, Rsync, Squid, Iptables
8. Web Tools/Technologies : Apache, Nginx, Drupal, Mediawiki, Redmine, Piwik, PhpBB

Now let's assume that you somehow managed to gain decent experience with all of these tools in just over 3.8 years.

  • Can apply tooling to a problem?

  • Solve "A" problem?

  • Identify that there actually IS a problem?

  • Possesses the skills to learn?

What can we learn from this list?

Experience with: Nagios, Statsd, Graphite, Logstash, Elasticsearch, Kibana, collectd.

Loves researching and implementing monitoring solutions to challenging architectural problems.

4 years of experience programming with Ruby, Python, AWK, Shell, Batch, VBS, C, C++, C#, Java, Javascript, JRuby, Jython and everything else.

Knows Ruby well but am passionate about learning new languages on demand. Here's a project I've been working on: LINK

Managed thousands of servers on 5 different OS distributions in 3 different Cloud providers.

Worked on a project that aimed to improve infrastructure management and provisioning on-premise and in the Cloud. Reduced IaaS Opex by 15% over 3 months.

Overloading an already overloaded requirement?

Looking for your potential.

Looking for a list.

Job seekers are talking about the wrong things during an interview.

Mistake No. 3

Task: "Here's a system. Please solve... and document".
 

Do you think the amount of servers you've managed will provide a good insight into your ability to solve this problem?

What do you think matters more?

The "what" (now) 

or the "how" (later)?

Task: "Unknown...".
 

Unorganized thoughts...

Good professionals know how much they don't know.

The fact that you managed to hire people, doesn't necessarily mean you'll be able to retain them.

isn't the problem.

Veterans don't want to set out fires.

Look for the passion and willingness to learn.

The problem isn't that tools and experiences are a part of an interview, job description or a resume.

It's that they seem to take precedence over potential and achievements.

We're not ACTUALLY looking for experience.

Fortune 100 CTO: "...Netflix has a superstar development team, we don't!",

Adrian Cockcroft: "Netflix hired them from you, and got out of their way...".

I agree with Andrew - I do not believe we're short on talent.

I also agree with Adrian - you need to get out of their way.

My main assertion is, that before we can get out of their way to let them build cathedrals and grow, we must adjust the barrier that's preventing them from trying.

refs

Nailing that "DevOps" Interview

By Nir Cohen

Nailing that "DevOps" Interview

  • 2,009