Tag: hiring

  • 7 Steps to DevOps Hiring Success

    7 Steps to DevOps Hiring Success

    As many of us in the DevOps scene know, most companies are hiring, or, at least, trying to do so. The required skills and job descriptions can change entirely from company to company. As a broad overview, most teams are looking for a candidate from either an operations and infrastructure background or someone from a software engineering and development background, then combined with key skills relating to continuous integration, configuration management, continuous delivery/deployment and cloud infrastructure. Currently in high-demand is knowledge of container orchestration.

    In the ideal world, the two backgrounds will meet somewhere in the middle to form Dev and Ops, but in most cases, there is a lean toward one side or the other while maintaining sufficient skills to understand the needs and demands of their counterparts to work collaboratively and achieve the end goal of continuous delivery/deployment. Every company is different and there isn’t necessarily a right or wrong here. It all depends on your infrastructure, tech stack, other team members’ skills and the individual goals you hope to achieve by hiring this individual.

    Focus Your Hiring

    Now, given the various routes to becoming a DevOps practitioner, how do hiring managers focus their search and selection process to ensure that they’re hitting the mark?

    Decide on the Background

    Assess the strengths of your existing team. Do you already have some amazing software engineers but you’re lacking the infrastructure knowledge? Aim to close these gaps in skills. You may have been given the budget to hire for DevOps, but you don’t have to spend weeks/months searching for the best software engineer who happens to use Docker and Kubernetes because they are the current hot trends in this space. Find the person who will provide the most value in your environment and go from there.

    Contractor or Permanent Employee? 

    Many hiring managers will automatically start searching for a full-time permanent employee when their needs may suggest that they have other options. Sometimes a contractor is your best bet or maybe contract-hire. If you’re aiming to design, implement and build a new DevOps environment, why not find a senior person who has done this a number of times already? Try hiring a senior contractor and bring on a junior full-time hire in parallel; this way, you’ll be able to retain the external contractor knowledge by having them work alongside the junior hire. Contractors can be expensive, but the knowledge they bring can be invaluable, especially if the work can be completed over a shorter time frame. Again, this is just another point of view and you might be best off with a full-time hire to grow the team.

    CTRL F is not the Solution

    Focus on their understanding of DevOps and CI/CD-related processes over specific tools. I believe the best approach is to focus on finding someone who understands the methodologies over the tools. Does your candidate understand the concept of continuous integration or the concept of continuous delivery? That’s more important than asking whether your candidate uses Jenkins versus Bamboo versus TeamCity and so on. Try not to get caught up in the exact tool chain. The focus should be on the candidates’ ability to solve problems. Are they obsessed with increasing efficiency, saving time, automating manual processes and constantly searching for flaws in the system? They might be the person you were looking for, but you missed them because you didn’t see the word “Puppet” on the resume.

    Work Closely with your Internal Talent Acquisition Team and/or an External Recruiter

    Be clear and precise with what you’re looking for and have an ongoing, open communication with recruiters. They can and will help you if used effectively. The job of these recruiters is to save you time by sourcing candidates while you’re focusing on your day-to-day role. Work closely with them and deliver in the same way that you would expect them to deliver for you. If you say you will review a candidate by X time, do it. If they say they’ll have a candidate in your inbox by Y time, make sure they do it, too. Start by setting up an initial call to talk through your requirement, lay out a timeline in which you expect candidates by a specific time and explain your process in terms of when you will interview, how many interview rounds and how soon after you will be able to make a final decision on whether to offer or reject the candidates. If you can get this relationship working well, you’ll save lots of time. And make sure your internal teams are focused on supporting your process, not blocking it.

    $$$

    Decide how much you want to pay. It’s not all about the money, but you can waste a lot of your and other people’s time if you don’t lock down the ballpark salary or hourly rate that you can afford. If your budget doesn’t stretch as far as your competitors’, you need to consider what else can help sell the opportunity. Flexible working hours and remote working options are some great ways to do this. Most companies have snacks, beer and cool offices nowadays, so focus on the real value such as the innovative work your team is doing and how awesome your game-changing product might be.

    Drop the Ego

    You may have an amazing company and/or product, but you also have some hot competition. Everyone is hiring in this space and candidates have a lot of the buying power. It is no longer as simple as saying, “We are hiring” and the awesome candidates come flowing in. You need to sell your opportunities. Maintaining a reputation as a great place to work is also important. A poor hiring process, such as interviewing without giving feedback, can contribute to bad rumors being spread across the industry. It only takes a few minutes to leave a sour review on Glassdoor.

    A Smooth Process is a Successful One

    “Let’s get every single person within the company to do a one-hour interview with the new DevOps person we are hiring!” No, let’s not do that. Two or three stages should be sufficient. You have managers and directors for a reason. Trust your instinct and use your experience to make decisions on who will fit into your organization. Some of the most successful companies can do one phone screen followed by an in-person meeting. During the in-person interview, spend a morning or afternoon allowing the candidate to meet the relevant leaders and senior members of their direct team, then take them for lunch, dinner or drinks where you can see how they are on a social level. If you can’t have a simple conversation with them, then you probably won’t enjoy working with them. If the thumbs are up, make the hire and don’t wait around. A good candidate will usually have numerous offers on the table at the same time.

    If all goes well, you should be inviting your shiny new employee or contractor into the office in the next few weeks and hopefully many more throughout the year.

    About the Author / Conor Delanbanque

    conordelanbanque

    Conor Delanbanque has been recruiting and leading recruitment teams in the DevOps space for the past few years. As well as being exclusively responsible for growing some of the most innovative DevOps & SRE teams in the US and Europe as an external consultant and recruiting partner, Conor also founded the Future of DevOps Thought Leaders Debate, sponsors DockerNYC Meetup on a regular basis and co-hosts ServerlessNYC. You can tweet him at @ConorDevOps, find him on LinkedIn or at events, expos and writing articles on devopsy.kinsta.cloud.

     

  • 5 Interview Tips To Help Developers Land Their Dream Job

    5 Interview Tips To Help Developers Land Their Dream Job

    CodeFights recently launched Interview Practice Mode, a new mode on its website that enables developers to prepare for job interviews with technical questions asked by top tech companies. Interview Practice Mode marks the latest step in CodeFights’ mission to transform the way companies hire with skill-based recruiting. This feature will help developers from all backgrounds, locations and skill sets better understand their abilities, pursue lucrative job opportunities and land their dream jobs.

    For most engineering jobs, companies put candidates through rigorous technical interviews with difficult questions and coding tests. These interviews can be difficult to prepare for, especially for candidates who have never gone through a similar interview process before.

    Here are five interview tips to help developers land their dream job.

    1. Practice using real interview questions. As a great developer you often think, “This is what I do for a living and I am good at it,” so it’s tempting to walk into an interview without much practice. The reality is, interview questions you face at most companies are very far away from your day job, so make sure to do some research and practice using real questions that appear on interviews.
    2. Make sure to ask lots of questions during the interview. Some engineers think that asking questions is a sign of poor skills or lack of understanding. In reality, it’s the opposite. Most questions during technical interviews are intentionally vague and the goal of the interviewer is to see if you can ask the right questions before diving in. The worst thing you can do during a technical interview is to solve something you weren’t asked to solve. So ask questions until you are absolutely sure you have all the details.
    3. Use sites such as Glassdoor and your own network to find out the interview process at the company. At some companies, the interview process includes four or five people onsite and they all have to agree on who to hire. At others, the interview process still includes four or five people, but all are from different teams, so as long as one says, “Yes,” then you are in. Knowing what you are dealing with and the process is behind the scenes will drastically improve your chances.
    4. Apply to as many companies as you can. Some candidates make the mistake of only talking to a select few companies and trying to hit the bull’s-eye from a few shots. That works in theory, but in practice it’s very hard to understand from the outside what a company is like. Interviews are a way for you to interview the company and see if it’s a place you’d like to spend time working at. On top of that, doing more interviews is more practice and, when you get to the offer stage, having several offers helps you negotiate the best compensation package.
    5. Be mentally prepared for a negative outcome. At the end of the day, interviews are run by human beings and human beings tend to be quite subjective. So no matter how good you are and how much you prepare, most of your interviews are going to have a negative outcome. You have to be mentally prepared for that. Candidates who are used to excellence throughout their lives can take it very personally when a company decides not to hire them. You have to set your expectations right upfront so you don’t set yourself up to be disappointed.

    About the Author / Tigran Sloyan

    Tigran Sloyan is CEO of CodeFights. Tigran is the co-founder/CEO of CodeFights, a startup aiming to make improving your coding skills and finding your dream job fun and accessible to everyone in the world. Since its launch in September of 2014, CodeFights has attracted half a million users from over 200 countries becoming one of the largest developer communities in the world. Connect with him on LinkedIn and Twitter.