Job Roles: IT
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.