We organized IT roles into groups so that you can quickly understand who is involved in an IT project. Find out more about IT roles!
IT is no longer a separate department in today's company structures, but rather a support and innovator for all departments. This is why understanding what the most common IT roles entail is crucial for everyone.
When talking about IT jobs, it is helpful to look at at least two levels of hierarchy. The first level is job categories, such as tester, software developer, etc., and the second level is more specific, let's say job subcategories, such as Java developer or manual tester.
The basic IT job categories are: project manager, business analyst, software developer, tester, operator.
In addition, we can talk about architect, DevOps, etc. as categories as well.
In this post, we will present you with a simple IT project and walk you through the fundamental IT roles and the tasks involved to complete project deliveries. The project that follows is a waterfall project. If you want to learn more about IT methodologies, check out our posts on the Waterfall, or Agile methodologies!
The Most Common IT Roles
The following positions will be considered primary roles in general IT projects:
Of course, it would be possible to define the core IT positions differently, but for the time being, we'll stick with this approach. This scheme follows the typical software development lifecycle.
Now consider a simple project (I know, no such thing exists!):
An Example Of A Standard (Waterfall) Project
The project manager is involved in all aspects of the project from start to finish, and they are aware of everything that happens in the process.
The business analyst is involved in the planning stage. Their job is to collect and document all business-related requirements.
When the plan is finished, the software developers develop the application based on the specifications (system plan) created during the planning phase.
Following implementation (development), testers test the application, and developers fix bugs.
After passing the final acceptance tests, the system will go live (yay!) and be given over to the operators.
This is known as traditional software development (or development with a waterfall method). The efficacy of this methodology is not the point here: I chose this example because it clearly represents typical IT roles.
What responsibilities come with these roles? Let's take a look:
The primary responsibility of the project manager is to ensure that the application or deliverables are available on time and accepted by the client, resulting in the completion of the project. Their primary responsibilities involve the project plan, the team, and the customer. To put it another way, they follow and oversee the project plan, lead the team, and interact with the customer.
Business Analyst, System Analyst
The business analyst's primary responsibility is to ensure that the system is developed and implemented in accordance with the client's expectations and requirements. To do so, they must first understand the specific processes they wish to implement, identify the system's end users and their specific needs, and define what and how data the application will manage.
But what's the difference between a business analyst and a system analyst role? In short, the business analyst has domain knowledge in the field for which the application is developed. (For example, they are familiar with the complaint management processes, rules, and banking stakeholders in the case of a complaint management system for banks.)
The system analyst possesses technical expertise (ex.: data model planning, SQL), and they may or may not be familiar with the business context of the future system. It can be difficult to draw the line, but in general, you can distinguish along these boundaries.
The business analyst or system analyst creates the system plan and specifications. This is their primary task.
In a nutshell, a software developer develops applications based on a system design. In reality, the process is rarely so simple: a slew of issues concerning the system plan may arise during development. During this time, planning activities take center stage. (Consider object-oriented programming, where the developer is always in the planning-implementation phase.) Software development requires a highly structured thought process, as well as careful planning and implementation.
Software developers used to be commonly called coders. As the software development industry has evolved, the role of the software developer has become more complex and interdisciplinary, and the term "coder" has become less common in professional settings. In my opinion, there is no such thing among IT roles today – as an active software engineer, I cannot call anyone a "coder."
Let's keep our example going: after development, these professionals test the application. Their role involves finding critical bugs, improving the overall quality of the software, and sending feedback to the development team.
To keep things simple, let's assume it is the testers who do this. In future blog posts, I will demonstrate why this is not always the case. (It's much more complicated than that.) However, for the time being, we will say that testing is the responsibility of testers.
Finally, if the program is bug-free and ready to use, it is forwarded to the operators. Typically, the operators follow a set of instructions. This specification includes both the requirements for setting up the live environment and the operational tasks.
And our project is finished!
Well done! Of course, no IT project is ever that straightforward, but it allowed us to walk through the most important and common IT roles. Check out our blog posts to learn more about IT jobs.