IT Job Roles
IT Jobs
Roles by Technology domains (AI, Web, Mobile, Desktop, etc)
Artificial Intelligence jobs (future proof)
Artificial Intelligence roles, especially those involving machine learning, typically require a strong foundation in mathematics, statistics, and programming.
Artificial Intelligence role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
Prompt Engineer | Designs and refines prompts for large language models (LLMs). | Python, OpenAI API, Prompt Engineering techniques | Moderate | ~300 | 180K | Learn Prompting, Prompt Engineering Guide, OpenAI Docs |
AI App Developer | Application Developer: Builds user-facing applications powered by AI, integrating various AI/ML models. | Python, Java, JavaScript, API development, UI/UX frameworks, integration with AI/ML services | Moderate | ~2,500 | 170K | FreeCodeCamp, Coursera AI, Udemy API Development |
AI App Developer - Multi-modal | Application Developer: Develops applications that leverage and integrate multiple AI modalities (text, audio, image). | Python, integration with NLP, Computer Vision, and Audio processing libraries, UI/UX for multimodal interactions | High | ~600 | 215K | Hugging Face Course, OpenCV Tutorials, SpeechBrain |
CV Engineer | Computer Vision: Develops AI systems that "see" and interpret visual information from images and videos. | Python, OpenCV, TensorFlow, PyTorch, Keras, Deep Learning for Vision (CNNs, Transformers) | High | ~900 | 210K | Coursera Deep Learning, LearnOpenCV, Fast.ai |
NLP Engineer | Builds AI systems that can understand, process, and generate human language. | Python, NLTK, SpaCy, Transformers (Hugging Face), TensorFlow, PyTorch, Language Models (LLMs) | High | ~1,200 | 225K | Coursera NLP, Hugging Face Course, Stanford CS224n |
ML Engineer | Machine Learning: Design, build, and train machine learning models. | Python, TensorFlow, PyTorch, Scikit-learn, Pandas, NumPy | High | ~1,500 | 220K | Coursera ML, Fast.ai, Kaggle |
Applied ML Engineer | Machine Learning: Focuses on deploying and scaling machine learning models for specific business problems. | Python, TensorFlow, PyTorch, Scikit-learn, cloud platforms (AWS, GCP, Azure), model deployment tools | High | ~1,800 | 200K | Coursera ML, Fast.ai, AWS ML Certification |
MLOps Engineer | Focuses on the deployment, scaling, monitoring, and maintenance of machine learning models in production. | Docker, Kubernetes, AWS, GCP, Azure, CI/CD pipelines, MLflow, Kubeflow | High | ~800 | 230K | MLOps.org, Google Cloud MLOps, AWS ML Certification |
Research Scientist | Conducts fundamental and applied research in artificial intelligence. | Python, TensorFlow, PyTorch, Research methodologies | Very High | ~400 | 250K | PhD programs, Research internships, Arxiv |
Learning Paths:
-
AI - Prompt Engineer:
- Python, OpenAI API
- Python, OpenAI API, LangChain
- Python, OpenAI API, Prompt Engineering techniques
-
AI - Application Developer:
- Python, AI/ML libraries, API Development
- Python, AI/ML libraries, UI/UX Frameworks
- Java, AI/ML libraries, API Development
-
AI - Multi-modal Application Development:
- Python, NLP Libraries, Computer Vision Libraries
- Python, NLP Libraries, Computer Vision Libraries, Audio Processing Libraries
-
AI - Computer Vision Engineer:
- Python, OpenCV
- Python, OpenCV, Deep Learning (CNNs)
- Python, OpenCV, TensorFlow/PyTorch
- Python, OpenCV, TensorFlow/PyTorch, Keras
-
AI - NLP Engineer:
- Python, NLTK
- Python, SpaCy
- Python, Transformers (Hugging Face)
- Python, TensorFlow/PyTorch, LLMs
-
AI - Applied Machine Learning Engineer:
- Python, Scikit-learn
- Python, TensorFlow/PyTorch
- Python, Cloud Platforms (AWS, GCP, Azure)
- Python, Model Deployment Tools
-
AI - Machine Learning Engineer:
- Python, Scikit-learn, Pandas, NumPy
- Python, TensorFlow/PyTorch, Pandas, NumPy
-
AI - MLOps Engineer:
- Docker, Kubernetes
- Docker, Kubernetes, Cloud Platforms (AWS, GCP, Azure)
- Docker, Kubernetes, CI/CD Pipelines, MLflow/Kubeflow
-
AI - Research Scientist:
- Python, TensorFlow/PyTorch
- Research Methodologies, Publication
Web Development Roles
Client-side web development is often considered a good entry point due to the relatively low barrier to entry (HTML, CSS, JavaScript) and abundance of resources.
Role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
Client Application Developer | Build user-facing web interfaces (front-end) for websites and applications. | JavaScript, TypeScript, ReactJS, Next.js, Angular, HTML, CSS | Moderate | ~150,000 | 120K | FreeCodeCamp, Next.js Docs, Codecademy TypeScript |
Database/Reports Developer | Design and visualize data through dashboards and reports. | SQL, Power BI, Tableau, Python, Excel | Moderate | ~50,000 | 100K | Microsoft Power BI, Coursera SQL, Tableau Public |
Server Application Developer | Develop back-end systems that power applications (e.g., APIs, servers). | Python (Django/Flask), Node.js, Java, Go, Ruby | Moderate to High | ~120,000 | 130K | Coursera Python, Node.js W3Schools, Go by Example |
Full-Stack Developer | Work on both front-end and back-end, creating end-to-end web applications. | JavaScript, TypeScript, React, Next.js, Node.js, Python, SQL | Moderate to High | ~100,000 | 140K | The Odin Project, Full-Stack Open, Udemy MERN |
Blockchain Developer | Build decentralized applications and smart contracts. | Solidity, Rust, Ethereum, JavaScript | High | ~15,000 | 170K | ConsenSys Academy, CryptoZombies, Udemy Blockchain |
Learning Paths:
- Client Application Developer:
- HTML, CSS, JavaScript, React
- HTML, CSS, JavaScript, TypeScript, React
- HTML, CSS, JavaScript, TypeScript, React, Next.js
- HTML, CSS, JavaScript, Angular
- Database/Reports Developer:
- SQL
- SQL, Excel
- SQL, Power BI
- SQL, Tableau
- SQL, Python
- SQL, Python, Power BI
- SQL, Python, Tableau
- Server Application Developer:
- Python
- Python, Flask
- Python, Django
- Node.js
- Node.js, Express
- Java
- Go
- Ruby
- Full-Stack Developer:
- HTML, CSS, JavaScript, Node.js, SQL
- HTML, CSS, JavaScript, React, Node.js, SQL
- HTML, CSS, JavaScript, React, Python, Django, SQL
- HTML, CSS, JavaScript, React, Next.js, Node.js, SQL
- TypeScript, React, Next.js, Node.js, SQL
- Blockchain Developer:
- JavaScript, Solidity
- JavaScript, Solidity, Ethereum
- Rust, Solidity, Ethereum
Quality Assurance (QA) Roles
Manual testing roles can be accessible with minimal coding experience, focusing on understanding software functionality and testing methodologies.
Role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
QA Tester (Manual) | Tests software manually to identify bugs and ensure functionality meets requirements. Often involves creating and executing test cases. | Test case management tools, Bug tracking systems (Jira, Bugzilla), Understanding of SDLC | Low to Moderate | ~40,000 | 80K | ISTQB Foundation Level, Guru99 |
QA Tester (Automation) | Develops and maintains automated test scripts to improve testing efficiency and coverage. | Selenium, Cypress, Playwright, Python, Java, JavaScript, CI/CD tools | Moderate to High | ~30,000 | 110K | Selenium Docs, Cypress Docs, Test Automation University |
SDET (Software Development Engineer in Test) | A hybrid role that involves both testing and development. SDETs build test frameworks, write automation code, and contribute to the development process to improve testability. | Selenium, Cypress, Playwright, Python, Java, JavaScript, CI/CD tools, understanding of software architecture | High | ~20,000 | 130K | Google Testing Blog, ISTQB Advanced Level Test Automation Engineer |
Performance Tester | Focuses on testing the performance (speed, stability, scalability) of software applications under various load conditions. | JMeter, Gatling, LoadView, understanding of performance metrics | Moderate to High | ~10,000 | 120K | JMeter Docs, Gatling Docs, Blazemeter University |
Security Tester | Specializes in identifying security vulnerabilities in software applications and systems. | Burp Suite, OWASP ZAP, Nmap, Metasploit, Penetration testing methodologies | High | ~8,000 | 140K | OWASP, SANS Institute, PortSwigger Web Security Academy |
Learning Paths:
-
QA Tester (Manual):
- Software Testing Fundamentals
- Software Testing Fundamentals, Test Case Design
- Software Testing Fundamentals, Test Case Design, Bug Reporting
- Software Testing Fundamentals, Test Case Design, Bug Reporting, SDLC Understanding
-
QA Tester (Automation):
- Programming Fundamentals (Python, Java, JavaScript)
- Programming Fundamentals, Selenium/Cypress/Playwright Basics
- Programming Fundamentals, Selenium/Cypress/Playwright, Test Frameworks
- Programming Fundamentals, Selenium/Cypress/Playwright, Test Frameworks, CI/CD Integration
-
SDET (Software Development Engineer in Test):
- Programming Fundamentals
- Programming Fundamentals, Test Automation
- Programming Fundamentals, Test Automation, CI/CD
- Programming Fundamentals, Test Automation, CI/CD, Software Design
-
Performance Tester:
- Performance Testing Fundamentals
- Performance Testing Fundamentals, JMeter/Gatling Basics
- Performance Testing Fundamentals, JMeter/Gatling, Performance Monitoring
- Performance Testing Fundamentals, JMeter/Gatling, Performance Monitoring, Cloud-Based Testing
-
Security Tester:
- Networking Fundamentals, Security Fundamentals
- Networking Fundamentals, Security Fundamentals, Web Security
- Networking Fundamentals, Security Fundamentals, Web Security, Penetration Testing Basics
- Networking Fundamentals, Security Fundamentals, Web Security, Penetration Testing Tools (Burp Suite, OWASP ZAP)
Desktop Development Roles
While still valuable, Desktop Development roles are much less in demand than web roles.
Role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
Windows Developer | Create desktop applications for Windows environments. | C#, .NET, WPF, Visual Studio | Moderate | ~20,000 | 110K | Microsoft Learn, Udemy C#, Pluralsight .NET |
Mac Developer | Develop applications for Apple's macOS platform. | Swift, Objective-C, Xcode, SwiftUI | High | ~20,000 | 150K | Apple SwiftUI, Stanford CS193p, Udemy iOS |
Learning Paths:
- Windows Developer:
- C#, .NET
- C#, .NET, WPF
- C#, .NET, WinForms
- Mac Developer:
- Swift, Cocoa
- Swift, Cocoa, Objective-C
- Swift, SwiftUI
Mobile Development Roles
Mobile development often involves more complex concepts (native SDKs, mobile architectures) and can be more challenging than web development.
Role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
Cross-Platform Mobile Developer | Develop apps that work on both Android and iOS. | Flutter, React Native, Xamarin, JavaScript | Moderate to High | ~60,000 | 130K | Flutter Docs, React Native, Udemy Flutter |
Mobile Native Developer - iOS | Build native applications specifically for the iOS (iPhone, iPad) platform. | Swift, Objective-C, Xcode, SwiftUI | High | ~40,000 | 140K | Apple SwiftUI, Stanford CS193p, Udemy iOS |
Mobile Native Developer - Android | Build native applications specifically for the Android platform. | Java, Kotlin, Android SDK, Android Studio | High | ~40,000 | 140K | Android Developer, Udemy Android |
Learning Paths:
- Cross-Platform Mobile Developer:
- JavaScript, React Native
- JavaScript, React Native, Redux
- JavaScript, React Native, TypeScript
- JavaScript, React Native, TypeScript, Expo
- Dart, Flutter
- Mobile Native Developer - iOS:
- Swift
- Swift, UIKit
- Swift, SwiftUI
- Swift, UIKit, Core Data
- Objective-C (Legacy)
- Mobile Native Developer - Android:
- Java
- Java, Android SDK
- Kotlin
- Kotlin, Android SDK
- Kotlin, Jetpack Compose
Infrastructure, DevOps and Security Roles
These roles typically require a deeper understanding of systems administration, networking, and cloud technologies. They often involve some coding, but the focus is more on infrastructure and automation.
Role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
DevOps Engineer | Automate and manage infrastructure, deployments, and cloud systems. | Docker, Kubernetes, AWS, Terraform, Bash, Python | High | ~30,000 | 150K | AWS Free Tier, KodeKloud, Udemy Docker |
Infrastructure Engineer | Design and maintain scalable infrastructure. | Terraform, AWS, Azure, Linux, Ansible, Python | High | ~28,000 | 140K | AWS Solutions Architect, Terraform Tutorials, Linux Academy |
Security Engineer | Secure applications and infrastructure against cyber threats. | Python, SAST/DAST tools, Kali Linux, AWS Security | High | ~22,000 | 160K | TryHackMe, Cybrary, Coursera Cybersecurity |
Learning Paths:
-
DevOps Engineer:
- Linux, Bash Scripting
- Linux, Bash Scripting, Docker
- Linux, Bash Scripting, Docker, Kubernetes
- Linux, Bash Scripting, Docker, Kubernetes, AWS/Azure/GCP
- Linux, Bash Scripting, Docker, Kubernetes, AWS/Azure/GCP, CI/CD
-
Infrastructure Engineer:
- Linux, Networking Fundamentals
- Linux, Networking Fundamentals, AWS/Azure/GCP Fundamentals
- Linux, Networking Fundamentals, AWS/Azure/GCP, Terraform/Ansible
- Linux, Networking Fundamentals, AWS/Azure/GCP, Terraform/Ansible, Python
-
Security Engineer:
- Networking Fundamentals, Linux
- Networking Fundamentals, Linux, Python
- Networking Fundamentals, Linux, Python, Security Principles
- Networking Fundamentals, Linux, Python, Security Principles, SAST/DAST Tools
- Networking Fundamentals, Linux, Python, Security Principles, SAST/DAST Tools, Cloud Security
Game & Embedded Systems Roles
Varies so much that it's hard to generalize. Put here for now.
Role | Description | Primary Technologies | Estimated Number of Jobs (2025) | Learning Difficulty | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
Game Developer | Build interactive games for mobile, PC, or consoles. | C#, Unity, C++, Unreal Engine, Godot | ~25,000 | High | 120K | Unity Learn, Brackeys YouTube, Unreal Engine |
Embedded Systems Developer | Program hardware devices like IoT gadgets, microcontrollers, or robotics. | C, C++, Rust, Arduino, Raspberry Pi | ~15,000 | High | 125K | Arduino Tutorials, edX Embedded Systems, Rust Embedded |
Learning Paths:
-
Game Developer:
- C# or C++ Fundamentals
- Game Design Principles
- Unity or Unreal Engine Basics
- Game Physics, AI, and Networking Concepts
- Game Development Project
-
Embedded Systems Developer:
- C or C++ Fundamentals
- Microcontroller Basics (Arduino, Raspberry Pi)
- Electronics Fundamentals
- Real-Time Operating Systems (RTOS)
- Embedded Systems Project
MAANG/MAGM specific Dev Roles
Roles like Algorithms and Data Structures Specialists and System Design Specialists are highly competitive and require significant preparation and experience.
Role | Description | Primary Technologies | Learning Difficulty | Estimated Number of Jobs (2025) | Avg. Salary Range (USD) | Recommended Starting Resources |
---|---|---|---|---|---|---|
Algorithms and Data Structures Specialist | Design and optimize algorithms for performance-critical systems. | Python, C++, Java, LeetCode, HackerRank | High | ~20,000 | 170K | Coursera Algorithms, NeetCode, LeetCode |
System Design Specialist | Design scalable, reliable software systems for distributed environments. | Python, Java, AWS, Microservices, Design Patterns | Very High | ~15,000 | 190K | Designing Data-Intensive Applications, Grok System Design Tutorials, LeetCode System Design |
Learning Paths:
-
Algorithms and Data Structures Specialist:
- Basic Data Structures (Arrays, Linked Lists, Stacks, Queues)
- Advanced Data Structures (Trees, Graphs, Heaps)
- Algorithm Design Techniques (Greedy, Dynamic Programming, Divide and Conquer)
- LeetCode, HackerRank Practice
-
System Design Specialist:
- Operating System Concepts, Networking
- Distributed Systems Concepts, Database Systems
- Microservices Architecture, Cloud Computing (AWS, Azure, GCP)
- Design Patterns, Scalability & Reliability Principles
- MAANG = Meta, Apple, Amazon, Netflix, Google
- MAGM = Meta, Apple, Google, Microsoft
- MAANG/MAGM Emphasis: The inclusion highlights the importance of these roles for those companies, especially in interview processes.
Starting Steps:
- Choose a Role
- Learn Basics
- Build Projects
- For example: If you chose Mobile Native Developer, focus on Java/Kotlin for Android or Swift for iOS.
Notes::
- Sorting: Sorted in the order of columns. For Learning Difficulty easier roles on top.
- Salary Range: Average salary range for the role.
- Recommended Resources: Recommended resources for learning the role.
- Path Iteration: Recommend a plan that iterates the learning path multiple times to reinforce learning in each area.