Confused about job prospects on DevOps in New Delhi, India

Hi.

I have some questions about switching to a development profile.

I’ve been staying in New Delhi, India, for the past several years. I did not finish my CS degree from college, mainly because I had started freelancing then, building medical software for local clinics, and it seemed a better idea at the time than rote-learning a lot of the topics I had to sit through in class. Its a bit more complicated than that, but I’m not condoning my actions. Going back, I would do things differently.

In spite of that shortcoming, I was hired in 2010 as a PHP developer, which basically involved building everything from scratch. Working with CodeIgniter and learning about good design patterns and OWASP security was really fun, as was HTML and CSS, which is what I did for some time. Eventually I switched to freelancing in the middle, unsuccessfully, then returned to the same company after a year. I eventually became disillusioned, switched to my current company where I have been for over a year and a half, and I have become disillusioned again.

Over the past year, I’ve been working with the AWS cloud, but mostly in an operations capacity. I tried to become more devopsy by doing more development by trying to handle the end-to-end pipeline, which is what I enjoyed doing as a freelancer, but the roles here are very siloed, and I am now in an only development profile. I’m currently working in Java, which I haven’t worked on since high school, and I’m having difficulty getting up to speed in a new language and Netty, etc., especially given that I’ve gravitated towards scripting languages like PHP and Python in the past.

I did start the Coursera Python course, but left it near the end. I also started FreeCodeCamp, but I’ve left it in the middle. Primarily because I’m not able to see a very clear path forward.

In the hopes of switching jobs to a dev profile, I started applying, but I’m only getting calls for operations profiles under the guise of DevOps. The job profile says DevOps, but all they want to know is if I’ve used Terraform or Packer or Cloudformation. No one cares if I’ve read the Phoenix Project or care about design patterns.

I know that all of this is sounding a little whiny, and maybe the answer is that I just need to move forward with something. But I would like to see some goalposts down the road.

I feel that right now I have a little bit of a hand dipped in everything, but not enough to be hired for any one position. The job offers I’m getting right now sound very distressing, and in explaining my profile, they seem to focus very heavy on the fancy hammers and screwdrivers that I’ll be using, but not on what I’ll actually be building in the end. I feel that staying in an operations role over the last year may be screwed up my chances to actually build something.

I’ve been reading this forum and I’m really happy that a lot of people have found good and sustaining jobs through FreeCodeCamp, but switching to a purely dev profile would be a huge career and salary hit. But I’m willing to do it if it’ll get me back to dev.

I’m sorry for a rant here, and I’m not looking for a carefully laid out career strategy, but it would really help to know how I can best course-correct.

Thanks.

Sure, if it’s DevOps it’s not particularly relevant what has been built. Something like PHP definitely isn’t useful beyond “how do I deploy that”. Bash, Python, Ruby etc are useful for writing scripts to deploy things. DevOps isn’t about building applications, so if you’re being approached for those jobs, sure, they’ll focus on technologies necessary for DevOps - stuff like design patterns is irrelevant.

It is exactly as you say: if you want to be a PHP developer, is it worth the [large] pay hit you are going to take (your earning potential is likely much higher with DevOps)? You’d be moving into a saturated jobs market by going to web dev, but you obviously have a fair chunk of the skills needed

Ten things you need to know before starting a career in DevOps

So you’re considering a shift to DevOps, Forbes recently reported that highly skilled DevOps specialists with just a high school degree earn a median salary of $106,734. A recent study of IT salaries revealed that 46% of companies plan on hiring DevOps in the coming year.

The DevOps space is red hot but here’s the skills you need, and what you should expect to encounter, in a career in DevOps.

What is DevOps?

DevOps is a culture shift or a movement that encourages great communication and collaboration (aka teamwork) to foster building better-quality software more quickly with more reliability.

It is also an automation process that allows quick, safe and high quality software development and release while keeping all the stakeholders in the loop.

What DevOps is not

DevOps is not a person, a role, or a title. You are not a DevOps engineer, even though you may call yourself one. DevOps is not about using a specific set of tools and it most definitely is not about renaming your Ops team the DevOps team.

Understand continuous delivery

Continuous delivery is an automated process for building software that expedites its release. It allows you to deploy a feature or upgrade rapidly, and with minimum manual intervention. The goal is more frequent, and far less risky small changes, to get dramatically faster and more focused feedback.

The ability to communicate is a must

Sharing and empathy is central in DevOps as it is in life. Knowledge not shared with the team is useless and will just create a bottleneck. Empathy for everyone on the team and their tasks is also crucial. You must have empathy for the challenges that each role brings to create a harmonies workplace.

Bring a wide business understanding

A DevOps specialist must be able to see the big picture in terms of processes, needs, and constraints. You have to be very familiar with all sides; Development, Operations, Sales, Product, etc. and you must know how they all work together to achieve the organizations goals.

Be prepared for late nights

DevOps means becoming ever more agile and responding to a client’s needs in real time. Critical events often occur in large and complicated systems. Hence, don’t be shocked if you get a 2 am call in the case of a crises.

Questions you can expect to be asked in an interview

According to Mike Baukes, if the interviewer wants to make sure you understand the framework you’ll be working with, they may ask “how does HTTP work? How does a web page appear in a browser?” Baukes advises that you may get a question like “How would you prepare for a migration from one platform to another?”, “Tell me about the worst-run/best-run outage you’ve been a part of. What made it bad/well-run?” or “What is the purpose of a post-mortem meeting?” and “Do you know how to learn from mistakes?”

Programs you need to know

Learn tools like Jenkins, Ansible, Chef and Puppe. It is well worth doing it on your own time and with your own dime, hands-on experience with actual tools and projects and an understanding of best practices can be more valuable than a college degree.

What you need to know about operations

If you’re coming from the developer side, obsessively get involved in everything your team does involving operations — deployment, scale, etc. If your team doesn’t do any of that for any number of reason, go over to the operations team and sit in on a few deployments.

Understand the databases role

Your database holds your companies most valuable asset, you must understand how the database and DBAs fit into the DevOps process so that the database does not become the weak link holding back the entire application development.

Ultimately DevOps is knowledge, concepts and best practices. It gives an edge to every developer or operations who practices it over those who don’t. It might not be something to do as a full time job, but any developer with DevOps experience will find themselves at the focal point in any organization striving to improve its processes, and hence position themselves to climb the ladder quicker.

To conclude this is if you are still planning to get started with DEVOPS here is the best option for you & I am sure you gonna love it - Project in DevOps - Build Real World Processes