This is one of the questions I get asked a lot as a software professional. I decided to collect the thoughts and advice I’ve shared with my friends in the past.
“The IT industry” is such a wide statement these days and there are so many different job types that getting your head around them is not the easiest if you’re not an insider. In this article, I am going to describe a few areas of expertise that may be attractive to people willing to try working in the field.
A word of caution. I know that some of you reading the article came here because you saw others making great careers and earning a good living by working in technology. It is true that the field is relatively young and there are fewer glass ceilings and opportunities when compared to other areas. The industry is still hungry for new people. That said, I believe growing a career in tech is not very different from doing that in any other area. You can benefit from some rapid movements in the market, sure. But if you’re not at all interested in it and your motivation is purely financial, you may be setting yourself up for a few unhappy years. Give it a try though!
Working with technology can be extremely fulfilling, even if you didn’t think of yourself as a techie before. Keep in mind that there are a lot of people trying to get started in the field and the competition for entry-level positions may be high. The financial reality of these positions may be disappointing for you as well. There are crafts that can pay much higher in the beginning. They usually plateau much sooner but it is something you should be aware of.
None of the jobs described below are “software engineer”. I think it requires the highest amount of effort and there are plenty of online resources about becoming one already. Each of these jobs can be your way to get in, make some connections and learn how to think in tech. You can use those to start programming later on if you’re more about soft transitions. If you’re not, click away and start coding something!
One last note before we begin. Use these job descriptions as a base for your search. Each of these can be done in various industries. Whether you are more into medicine, fashion, food, software products, or finance, there’s space for these everywhere. Find an industry you like and look for positions there first.
I found it’s quite a foreign concept to people outside of tech. A UX (user experience) designer is someone who designs interfaces from a functional standpoint. Your goal in this position is to understand the user's journey and create a seamless experience. Decisions about the placement of objects in mobile and web apps should be research and psychology driven. As a UX designer, you should read industry press and follow data-driven trends. In some jobs, you will run workshops with clients and other stakeholders to understand the purpose behind the requirements and tailor the solution to the target audience.
On this career path, you can focus on the visual side of design as well. You can also smoothly branch out to product management, no-code application development, and similar areas.
UX applies to programming and voice interfaces in the same way as it applies to web apps. You can try to specialize in a way in order to build a brand for you.
When it comes to tools used, check out Figma or Adobe XD.
A result of a UX designer’s work is usually a wireframe.
Another interesting area of expertise is testing. Probably the best out of these if you want to transition into programming later on. That said, good testers are always sought after so it can be a long and fulfilling career.
Any piece of software that goes to users needs to be tested in some way. This includes clicking through the forms, subpages, and application features but also ensuring inner logic works properly. In the beginning, testers usually test manually and then go on to learn automated methods of testing if they want to advance their career in this direction. Automated tests are usually written in the same programming languages that the applications are written in, so testing is also a good start in programming if you want to get an entry-level job without at least a year-long learning journey.
QA engineers also participate in creating testing scenarios based on business requirements or product designs. You will be involved early on in the process to ensure other engineers take every nuance into account. You will have a chance to understand the product well, which is an interesting part of this position.
Scrum Master or SM is a role that's related to an agile approach to software development relevant to the Scrum methodology. (Agility of scrum is debatable at times but it’s a whole other topic.) What you will notice working in multiple companies is that the software development process is pretty consistent. There is variability but certain roles and positions exist in most modern organizations. SM is one of them, responsible for the software development process.
SM organizes and facilitates meetings including daily synchronization stand-up meetings, planning sessions, work backlog refinements, reviews of work (sprint reviews), and team retrospectives focused on improving the team's work process.
It is one of the roles where certification can really help you. Holding official Scrum certificates may get you an interview for the role.
If you're into management, like working with people, and are interested in technology in general, this may be a role for you. Technical skills help in applying but you should be able to get a job and grow in the people management space without them.
Another role related to the scrum methodology is Product Owner or PO.
I have written an article about being a Product Owner in the past:
A product owner is similar to a project manager. However, this role in software is a bit more nuanced. The idea that teams are self-managed is alive and often implemented pretty well. The product owner defines the work to be done and negotiates details with stakeholders.
One of the entry-level jobs on the product owner's path is that of a business analyst. As a business analyst, you work to understand the requirements for the product, define the functionalities and estimate the amount of work needed to implement them.
Customer Success Managers are working with clients of a software company in order to make sure they have what they need to use the product. They help customers resolve issues and in general are the first line of contact for customers. Another aim of CSMs is to build customer loyalty.
I don’t know an awful lot about the role, this article sums it all up nicely.
Every software needs documentation manuals for customers or all sorts of other texts. As a technical writer, you will be writing those. If you are good at understanding complex concepts and you are good at explaining them in simple ways, this is something for you. If you also like writing, it's a perfect match. Some of your responsibilities would also include writing technical content for the marketing side of a business. Developers in general are not great writers, so people in this role are highly desirable.
I hope you enjoyed this quick run down and got inspired to try your luck in tech. Remember, the IT industry may not be a dream place, even though some people paint it that way. It can give you a very satisfactory path of growth but so can other areas of expertise. Make sure you make decisions that will have a long-term positive impact on your life. If some of those positions seem unfamiliar to you, don't be afraid to try and apply. Talk with recruiters and get an idea of what the roles are about. The Internet is full of content that will help you prepare for the job. Good luck!
Also published here.
Follow me on Twitter @horosinov to engage in the discussion.
If you seek general advice for getting a job (interviews, CVs, etc.), check out this article: