1

I've been applying for entry-level Software Engineer roles.

My main focus is on programming languages, databases and software engineering in general. I know basic git commands and concepts (Enough to get started in a job I think).

Things I haven't needed to learn sofar are cloud and all the various DevOps tools and practices that have become more noticeable in job descriptions lately.

My approach has been that I want to be hired on my programming skills and could learn whatever DevOps tools a company uses on the job or in my spare time.

I've had some feedback from companies, recently one where I made it to final round of interviews. I was told that my programming skills were great, but I wasn't suitable on the basis of not having DevOps, networking expertise etc. (They should have eliminated me at CV stage then because I didn't mention these on my CV).

I don't have a Computer Science degree by the way.

At this point it seems I'll have to learn cloud etc to get the job I want.

I'm looking for some guidance as to what to learn and what to prioritise. I've looked into some courses and books but they seem to be for people who want to specialise. I'm just looking for the minimum I'd need to learn to be considered job-ready.

Thanks for any advice.

6
  • 1
    Note that it doesn't necessarily follow that you should have been eliminated at the CV stage. It is entirely possible that the company was open to someone that had no DevOps (or some other preferred skill) if they were better on the required skills. They did the interviews, you and some other candidate were roughly equal on coding skills but he had more DevOps experience so that was the tie-breaker. You lost out because of a lack of DevOps but it was likely entirely reasonable to advance you through the interview rounds to get to that point. Sep 2, 2022 at 18:39
  • Thanks, that's a fair point. I'm not thinking straight probably because the rejection email came just a couple of hours ago.
    – questioner
    Sep 2, 2022 at 18:49
  • Prioritize getting a job and then learn the specifics of a stack only when somebody who signs your paycheck tells you to learn it. It is not what you want or should learn it is what the business that employs you needs you to use.
    – Neil Meyer
    Sep 2, 2022 at 19:44
  • That was my thinking on it as well, but there's a high applicant count for these roles. Those who acquired DevOps skills (If they are recent graduates, maybe they did it in college) are at an advantage over someone like me. In some of the roles I've applied to, cloud/devops are not requirements, but listed as 'advantage' or 'nice to have'. It seems that's what's making the difference.
    – questioner
    Sep 2, 2022 at 19:59
  • When you say you don't have a degree, do you mean you have no college degree, but some other certification, or do you mean you have no formal education at all and are self-taught?
    – nvoigt
    Sep 3, 2022 at 6:37

3 Answers 3

2

It can be difficult to get your first job in software engineering, because many companies are looking to hire experienced software engineers. Experience can drastically reduce the training required to get useful output from a new hire, and this seems to be extra important with software engineers.

The exact stack in use is company-dependent, but familiarity with one can more-or-less translate to the other solutions. I would recommend getting familiar with at least one, possibly two. This improves your chances that the company you interview with will use one you're already familiar with.

As a novice practicing, it's difficult to set up and use team-based development software. Joining open-source projects as a volunteer may be a good way to get some experience and mentoring with development team software. This shouldn't stop you from applying to jobs, though.

Two tips you may find useful:

  1. Companies aren't only looking for experienced software engineers, many will hire entry-level and expect to pay less. The upside of this is you can get on-the-job training and meet the 'years of experience' requirements for other jobs later.
  2. Regardless of whether they want experienced or fresh software engineers, emphasize (and be ready to back up) your flexibility and how rapidly you can learn new technologies. Software engineering is a moving target, and even established companies sometimes implement new languages/frameworks or pipeline management software; being able to pick things up quickly is more useful than deep knowledge of an old/obsolete tool.
2
  • Thanks, this is helpful. If you don't mind clarifying, when you say "team-based development software", can you give some examples? (I googled the term and there were no results). It would be useful to know what I can start learning/practicing by myself vs better to wait and do it with others.
    – questioner
    Sep 2, 2022 at 20:11
  • 1
    Git, Azure DevOps, CodeCommit, Subversion, Jira, etc. Tools to store, manage, review and distribute code and work items. Sep 2, 2022 at 20:14
8

The answer here is entirely company dependent. Some companies won't care that you're currently "code only" and need to learn other stuff. Other companies want a more rounded person straight out of the gate. Really, the only way you can find out is apply and ask questions during the interview process.

2
  • On the last part, I did ask about the amount of DevOps needed in the 1st round interview. They were aware I had no DevOps but was willing to learn. I got put through for the coding assessment(Round 2) nonetheless.
    – questioner
    Sep 2, 2022 at 18:19
  • 2
    Sounds like you did the right thing. Spoiler time: sometimes companies are a bit rubbish at hiring. Sep 2, 2022 at 18:21
6

What's the minimum DevOps you need to be a Software Engineer?

DevOps is not a must-have requirement to be a software engineer.

You can have zero experience with DevOps, and still can be a super star or genius software engineer at many companies that do not use DevOps.

DevOps is one of the popular methodologies of working in software development, and there are many other methodologies in software development also.

Some companies use DevOps while others don't.

Some software engineer positions at a company may require DevOps while other software engineer positions at the same company don't.

Certainly, many companies can hire entry level software engineers, and train them in DevOps.


I'm just looking for the minimum I'd need to learn to be considered job-ready.

If you can google "DevOps certification", "DevOps tutorial", or "DevOps on Udemy", you will see a lot of online learning resources which may be good starting points to learn DevOps. There are lots of online video training courses on DevOps also from websites such as Udemy, and others...


1
  • From reading job descriptions over the past several weeks, some DevOps is used (or useful) in most jobs. As I mentioned in another comment, it seems to make the difference in the end. I wonder if it could it be to do with company size whether they expect DevOps or not? I have been applying mainly to small/medium sized companies.
    – questioner
    Sep 3, 2022 at 10:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .