4: Which roles to go for
There is a huge variety of roles on offer in software organisations. For many roles, there are also variations within them, over and above the various levels of seniority previously mentioned.
In this section, we’ll cover the most popular technical and less technical roles.
There are three broad categories of technical roles that we’ll focus on: software engineering, data science, and quality assurance.
Figure 3 - Technical roles in software
A software engineer is someone who writes code. It is worth noting that sometimes the word developer is used instead of engineer, but essentially they refer to the same thing.
There is an enormous demand for software engineers, and many organisations are unable to get enough good people to fill their open roles. Therefore, the starting salary for an engineering role is higher than some other roles.
Writing code is both challenging and stimulating. It’s also highly rewarding as there is a clear output from your input. The role suits people who enjoy problem-solving, are logical thinkers, and are good at creating structure.
Being good at communication is important. However, you don’t need to be an extrovert to excel at this role.
Here are some popular engineering roles and what they do:
Front-end engineers work on the interface that users interact with.
Back-end engineers work on the behind the scenes logic and databases.
Mobile engineers work on Android, iOS and Windows phone apps – delivering apps to the stores.
DevOps engineers work on the environment, installation, configuration, and optimization of an app.
Some organisations prefer hiring for Full-stack engineers who work across all the areas listed above.
People working in data science are involved with preparing and analysing large amounts of data. They then review the results of that analysis to uncover patterns and enable companies to draw informed insights.
There are many areas of data science. Some of the popular areas are image processing (identifying patterns in images), natural language processing (identifying patterns in language), and statistics.
Data Science is earlier on in its journey than Software Engineering. Due to the huge potential of the field, there is also an increasing demand in talent for it. Diversity aside, the current talent pool in New Zealand is extremely small.
Data Science suits people with analytical minds, who enjoy doing research and experimenting with new things. It is also important that you have really good attention to detail.
Data Science is not well suited to people who prefer clarity on how to go about solving a problem, as it can be up to them to uncover a new way of doing so.
Here are some popular data science roles and what they do:
Data Analysts prepare and analyse data. This involves looking at large amounts of data and ensuring it is in the right format without errors, and then analysing it.
Data Engineers build systems that collect, manage, and convert raw data into usable information for data scientists and data analysts to interpret. Their goal is to make data accessible.
Machine Learning Engineers create programmes and algorithms known as machine learning (ML) models that enable machines to take actions without being directed.
Data Scientists do all of the above as well as identify and design many experiments with data to try and uncover underlying insight and value for an organisation.
People working in quality assurance are tasked with ensuring what has been designed and built is working as expected. Basically their job is to try and break things!
They ensure that a product is stable, reliable, performs well, works across all the expected environments (such as computer or mobile), and a large number of people can use it at once without it falling over.
It is worth noting that sometimes the word tester is used instead of quality assurance, but essentially they refer to the same thing.
Here are the two most popular quality assurance roles and what they do:
- Quality Assurance Analysts prepare plans for how they will go about testing what has been developed by engineers. They will then run those tests, or help others to run them. They will also make recommendations for what needs to be fixed, and what needs to be more easily testable through automated testing.
- Quality Assurance Engineers help to automate tests that will detect and prevent bugs from being released in important parts of the product when new features come out. This enables the testing effort of an organisation to be less manual, and therefore of higher quality.
There are three broad categories of less technical roles that we’ll focus on namely: customer care, product management and product design. Figure 4 - Less technical roles in software
In larger organisations, for each category, it is more common to see these duties separated out into different roles as described below.
In smaller organisations, within each category they are often rolled up into one role. At Joyous, quite uniquely, we combine all nine roles across all three categories into one - which we call Full Stack Product.
Customer Care, sometimes referred to as Customer Success, or Customer Service, ensures that customers achieve or exceed their desired outcomes while using your product.
Customer Care is a good entry point into the tech sector. The skills required are often more transferable from other industries and roles. It can give someone who has very low technical skills the foundation they need to progress into other roles.
Customer folks work directly with customers. They help customers get started with the product, learn all the features and benefits of the product, and get consistent value from it. They are also the first point of contact if any issues arise.
Being good at communicating is critical for this role, and if you have natural empathy for others, and want to help people succeed, then this is a good option for you to consider.
Roles in customer success are not in as high demand as other roles listed in this book. The salaries are also not typically as high.
Here are some popular customer care roles and what they do:
- Customer Activation Managers support customers using a product for the first time. Their goal is to ensure that a customer gets the most benefit from the product, setting them up for long term success.
- Customer Success Managers look after your customers by building relationships with them long term. In some organisations, they become involved even before a customer has agreed to use the product. Their main goal is to proactively ensure that customers are getting real value from using your product over time, and don’t stop using it.
- Customer Support Managers are on the front lines. They are replying to live chat messages, handling questions about where to find certain features and answering ad-hoc questions about options and functionality. They are often also tasked with writing help articles and creating training materials for customers. Compared with Customer Success Managers, they tend to be more reactive.
Sometimes the roles above are advertised using the word Specialist instead of Manager, but generally they involve the same broad responsibilities.
Product Management involves figuring out what the most impactful features are that should be added into a product, and then deciding which things will or won’t get built.
Product folks work very closely with others. They help everyone understand and agree what the priorities are.
Being good at collaborating and communicating is critical for this role. It is part of the role of product management to help other people provide input at appropriate stages.
They then help figure out the best way to build a new feature alongside designers and engineers. Providing clarity along the way as new features are being built, and once a new feature has been released to users.
There is a notable increase in demand for talent in product management, and no clear pathway into a Product Management role from university. Therefore, many Product Managers start their tech career in another role, and transition into Product Management later on.
Regardless of the industry, Project Managers, or people who are responsible for organising and co-ordinating complex systems or processes might find a transition into Product Management easier than others.
Here are some popular Product Management roles and what they do:
- Product Analysts support product teams in their product decisions using data to inform the next steps. They use data to understand how to make the product amazing, how to delight users, and how to make the product useful and helpful for users.
- Product Managers identify the customer need and larger business objectives that a product or feature will fulfil. They define what success looks like for a product, and help rally the entire team to turn that vision into a reality.
- Product Owners is a role that comes from a methodology called Agile Scrum. They are responsible for defining exactly what will be built and prioritising the order of the smaller units of work.
Product Design involves using different tools and approaches to create an interface and experience that helps a user achieve their goal.
Product Designers work closely with Product Managers, Engineers, and customers alike while creating and validating their design solutions.
Being creative and having a natural flair for design is as important as being a good collaborator. The best product designers crave input from others to help refine their designs further.
They pay close attention to even the most minor detail, while also considering the entire journey a user takes within your product.
There is a reasonable demand for Product Design; however, the ratio of Product Designers to Engineers is relatively low (perhaps around 1:5 or more). So the total number of roles available isn’t as high as it is for Engineers.
Here are some popular Product Design Roles and what they do:
- User Experience (UX) Researcher study users, and collect and analyse data that will help inform the product design process.
- User Interface (UI) Designers focus on the look and layout of a product. They design how each element of the product will look, including buttons, placeholders, text, images, checkboxes, and any visual interface elements people interact with.
- User Experience Designers cover the overall experience a user has with a product. A user experience is determined by how easy or difficult it is to interact with each element or aspect of a product. They will ensure the user flows smoothly and intuitively through a process or task within the product.
You can download the book below 👇 - it's free!