DEV Community

Cover image for Types of Software Developers: Whom to Hire
JayDevs
JayDevs

Posted on • Originally published at jaydevs.com

Types of Software Developers: Whom to Hire

This article is intended for people who plan to develop their own IT product, however don’t yet know what kind of specialists they need.

In This Article, We'll Figure Out:

  1. Most popular kinds of developers
  2. Other specialists often involved in the development
  3. What specialists do you need for your project

Most popular kinds of developers

In 2021 there are about 27 million developers in the world. Every one of them is unique, however all of them can be attributed to a certain kind.

There are many ways to classify developers. In this article, we’ll take a look at them from a global point of view to cover the topic entirety. Learn more about every kind in our guide How to hire software developer: The Ultimate Guide.

Web App Developer

Web developers belong to the most popular kind of developers. They create websites and applications such as Facebook.com, Google.com, Amazon.com, Netflix.com, etc.

Web developers can be divided into 3 categories: Front-end, Back-End, and Full-Stack.

  • Front-end developers are responsible for the part a user sees and interacts with;
  • Back-end developers focus on the site part users don’t see. Using algorithms they make the website individual for every user;
  • A specialist that creates both Front-end and Back-End parts is called a Full-stack developer.

Projects they participate in: Development of websites and web applications.

What they use in their work: CSS, JavaScript, HTML, Java, C, C++, Ruby, Perl, Python, Scala, Go, Kubernetes, Docker, Apache Mesos, Jenkins, HashiCorp stack (Terraform, Vault, Consul, Nomad)

Work examples:
Amazon.com – online store;
Netflix.com – streaming service;
Jaydevs.com – our company's site.

Jaydevs website

Jaydevs website

Mobile App Developer

Mobile developers create smartphone applications like entertaining apps (to learn languages, for reading fans, to do sports, etc.), online shopping apps, etc.

These applications are mainly developed for two operational systems – iOS and Android.

In their work mobile developers closely collaborate with designers, QA engineers, and DevOps professionals.

There are 3 main kinds of mobile developers:

Projects they participate in: development of mobile applications for iOS and Android.

What they use in their work:
Android: Java, Kotlin, Android Studio, Jetpack Compose, Android UI;
iOS: Objective-C, Swift, Xcode, AppCode, UIKit, SwiftUI;
Cross-Platform: React Native (JS), Flutter (Dart), Xamarin (C#).

Work examples:
U.S. Bank – mobile banking;
Google Maps – mobile map;
PEAR – personal fitness instructor.

Google Maps

Google Maps

Desktop/Console App Developer

Desktop app developers create desktop/console applications as Microsoft Word, Skype, or Spotify.

Similar to mobile developers, there are Desktop developers that work with only one operating system Windows, Linux, or PS4. And there are specialists developing applications to work on several platforms.

The difference between Desktop applications and web applications is that Desktop applications must be installed on a specific computer/console, while you would only need a browser and the Internet connection to access a web application.

Projects they participate in: Projects aimed at the development of Desktop/Console applications.

What they use in their work: Objective-C, Cocoa, Swift, C#, JavaFX, C/C++, QT, Python, Ruby, Vala with GTK+.

Work examples:
Microsoft Excel – office assistant;
Adobe Photoshop – image editor;
Safari Browser – internet browser.

Microsoft Excel

Microsoft Excel

Video Games Developer

Video Games Developers take care of creating games for PCs, smartphones, or game consoles.

They are the same web, mobile, and desktop/console developers as listed above, however specialized in games instead of standard applications.

Video game developers play an important role at almost every stage of the video game creation process – starting from graphics creation, AI characteristics, and game mechanics and ending with testing and troubleshooting. All of this requires a specific skill set. This is the reason why we distinguish this kind of developer.

Often the whole team of game designers and musicians collaborate with developers when creating a product.

Projects they participate in: Projects aimed at creating games for smartphones, computers, and game consoles.

What they use in their work: Unity and Unreal Engine 4 engines, 3D modeling, knowledge of patterns, specifics of programming languages (C++, C#, JavaScript, Python, and Java).

Work examples:
FIFA 21 – soccer simulator;
Sims – real-life simulator game;
Dota 2 – multiplayer online battle arena.

Dota 2

Dota 2

Embedded Systems Developer

Embedded Systems Developers develop software to control different appliances and machines that differ from conventional computers: refrigerators, watching machines, electronic toys, etc.

In their work, Embedded Systems Developers use a variety of programming tools, microprocessors, and operating systems. They also often work with mobile and other developers to create IoT systems.

IoT – is a system of embedded, internet-connected objects that can collect and transfer data via wireless networks without human participation. For instance, smart homes, portable health sensors, etc.

Projects they participate in: Projects to create appliances controlling software.

What they use in their work: C++, Python, Lua, Rust

Work examples:
Smart Home Manager – smart home;
Flo by Moen – home water monitoring system.

Smart home manager

Smart home manager

Other specialists often involved in the development

Apart from developers, some projects, especially complex and specialized ones, require Data Science specialists, Data Engineers, and DevOps engineers. They can’t be called developers, however some projects can’t be realized without their participation.

Data Science Specialist

Practically any project involving data processing would require Data science specialists. The work of Data Science professionals assumes processing, analysis, and modeling of data.

Many successful IT projects involve data analytics. Such companies as Amazon, Netflix, and other big companies analyze tons of data to improve user experience and find the best products/movies for their users.

Projects they participate in: Projects involving data collection and analysis with further processing into a more comprehensive and convenient format.

What they use in their work: programming, machine learning, data visualization, big data platforms.

Data Engineer

Data engineers design and create data systems. These systems collect and process raw data into a piece of meaningful information. This information is sequentially used by Data Science specialists and business analysts.

Data engineers work with Data Science specialists, increasing data transparency and enabling companies to take more reliable business decisions.

This profession requires a certain technical skillset including deep knowledge of database design and programming languages.

Projects they participate in: Projects dealing with data collection and database system design. Practically, such specialists are needed on any large project.

What they use in their work: ETL Tools, SQL, Python, Spark and Hadoop, HDFS, and Amazon S3.

DevOps Engineer

The DevOps Engineer works on everything that makes development faster and more efficient. He automates development processes, works with cloud technologies, integrates various parts of the code, etc.

DevOps engineers are required in almost all IT projects. They accompany the product life cycle from start to finish, help to combine all processes into a single system, reduce development time while increasing its efficiency and safety.

Projects they participate in: Involved in practically all types of projects to provide quality products for the end-user.

What they use in their work: Version control instruments (GitHub, Bitbucket, GitLab), continuous integration services, application performance monitoring tools (Prometheus, Dynatrace, AppDynamics), server deployment, and monitoring tools (Splunk, Datadog).


What specialists do you need for your project

Every project is unique, however there are typical projects that have similarities in terms of the team required to develop them.

We’ve put together a spreadsheet of typical projects and developers you might need to bring these projects to life.

A specialist you need for your project

A specialist you need for your project

Description of the designer, QA engineer, and music author is out of the scope of this article since they are not directly related to software development.

Should you have any further questions feel free to contact us. We’ll be happy to tell you what specialists are needed to complete your project.

Top comments (0)