As we head into 2025, businesses are dialed in on hiring roles such as software engineer, software developer, and end-user support, as well roles centered around cloud, database management, and systems engineering and administration, according to Robert Half Technology’s 2025 IT salary report.
With so much disruption in the tech industry in the past year, most notably the continuing rise of AI in the enterprise, executive priorities are shifting, with a growing focus on hiring for the future. But with only 35% of professionals actively searching for a job, compared to 49% last year, according to Robert Half, it’s little wonder why 90% of IT hiring managers report challenges finding the talent they need in today’s market.
As a result, more technology managers (60%) are turning to contract professionals to meet skills needs. This is especially true for roles involving AI and machine learning; security, privacy, and compliance; and software and applications development.
For organizations looking to attract talent, job seekers are interested in competitive compensation, career and professional development, and a commitment to healthy work life balance. Expect heavy competition for software engineers, software developers, and cloud, database, and systems engineers and administrators, as well as end-user support professionals.
Here are 10 jobs expected to be in high demand for 2025, the skills and experience you should look for when hiring, and the salary ranges you’ll want to pay to stay competitive in the marketplace — ranked by average pay.
The 10 most in-demand tech jobs for 2025
Job | 25th percentile | 50th percentile | 75th percentile |
Data engineer | $125,750 | $154,000 | $179,500 |
Senior software engineer | $121,250 | $147,500 | $177,250 |
Software developer | $106,500 | $130,750 | $153,000 |
Network/cloud architect | $108,250 | $129,750 | $152,000 |
Systems engineer | $97,750 | $119,250 | $148,500 |
Developer/programmer analyst | $94,750 | $120,500 | $142,500 |
Senior consultant | $96,750 | $116,000 | $136,250 |
Systems administrator | $78,750 | $96,250 | $115,500 |
Desktop support analyst | $55,000 | $66,500 | $77,250 |
Help desk – tier 1 | $40,500 | $49,000 | $54,750 |
- 25th percentile: new to the type of role, still acquiring relevant skills
- 50th percentile: average experience, has most of the necessary skills
- 75th percentile: above average experience, has all needed skills
Data engineer
Data engineers are responsible for building, designing, and maintaining the tools and software required to analyze and process large data sets in the enterprise. It’s an important role for maintaining data in a business, with a focus on ensuring data tools are scalable, reliable, and secure across the organization.
Requirements: Candidates will typically need to have at least a bachelor’s degree in computer science, IT, computer engineering, mathematics, or a related field — more senior roles may require a master’s degree. Look for experience with data processing, software development, database management, and cloud-based data processing.
Certifications: Hiring managers will also want to keep an eye out for relevant certifications such as AWS Certified Data Analytics, Cloudera Data Platform Generalist, and Google Professional Data Engineer.
Skills and experience to look for:
- Experience with multicloud computing, data visualization, machine learning and AI, and NoSQL
- Knowledge of programming languages such as Python, Ruby, Apache Spark, and Rust
- An understanding of automation, scripting, and enterprise architecture
Senior software engineer
Software engineers are responsible for designing and creating software programs and applications to suit business needs. It’s a role that requires cross-collaboration and communication skills, as well as the ability to work in a team environment. Software engineers are tasked with producing quality source code that is well-documented and organized, and they work closely with quality assurance to ensure software is properly tested.
Requirements: The role typically requires a bachelor’s degree in computer science, electrical engineering, computer engineering, or a related discipline.
Certifications: Certified Software Development Professional (CSDP), Certified Software Engineer (Cse), Certified Ethical Hacker
Skills and experience to look for:
- Programming languages, including C#, C++, and Java
- Experience with the .NET Framework
- Ability to collaborate across teams to test hardware and software integration
- Experience creating documentation for software specifications
Software developer
Software developers are typically focused on building programs to be used internally or on mobile devices, while systems software developers are focused on creating software for consumers or clients outside of the organization. The demand for software developers remains strong as more companies embrace digital transformation and begin creating their own internal or external software systems.
Requirements: Employers typically look for a bachelor’s degree in computer science or a related field, but others may require a two-year technical degree, especially if paired with several years of practical experience.
Certifications: AWS Certified Developer Associate, Certified Software Development Professional (CSDP), Certified Scrum Developer (CSD), Google Cloud Professional Developer
Skills and experience to look for:
- A strong knowledge of how to design, create, test, program, and update software
- Ability to understand and translate end-user needs and requirements
- Experience coding, testing, debugging programs, and modifying, expanding, and updating applications
- Strong communication skills to work across teams with analysts, engineers, and QA testers
Network/cloud engineer
Network/cloud engineers are responsible for overseeing an organization’s network and cloud infrastructure along with developing and implementing network and cloud applications and migrating existing applications to the cloud. Network/cloud engineers should have experience debugging cloud stacks, securing apps in the cloud, and creating cloud-based solutions. They should also have experience with security implementation, network infrastructure, troubleshooting, analytical skills, and knowledge of SysOps, Azure, AWS, GCP, and CI/CD systems.
Requirements: The role typically requires a bachelor’s degree in computer science or a related field and at least three years of experience in cloud computing. It also requires soft skills such as strong communication, collaboration, and client management skills.
Certifications: Keep an eye out for candidates with certifications such as AWS Certified Cloud Practitioner, Google Cloud Professional, and Microsoft Certified: Azure Fundamentals.
Skills and experience to look for:
- Experience identifying and implementing optimal cloud and network solutions
- Knowledge of cloud platforms such as AWS, Azure, and GCP
- Programming skills in languages such as Python, Java, and R
- Understanding of DevOps, APIs, and web services
Systems engineer
Systems engineers are responsible for designing, integrating, and managing complex systems through the duration of their lifecycle. That includes everything from largescale software platforms, to web applications, to cloud infrastructure and more. It’s a role that requires a wide breadth of skill and experience to oversee an organization’s hardware, software, and services.
Requirements: Degree requirements vary by role and company, but most companies look for a bachelor’s degree in computer science or a relevant field. Systems engineers typically also need to have at least five or more years’ experience working with the company’s hardware and software systems.
Certifications: Certified Systems Engineer Professional (CSEP), Certified Enterprise Architect (CEA), Expert Systems Engineering Professional (ESEP), Certified Reliability Engineer (CRE)
Skills and experience to look for:
- Strong project planning and organizational skills
- Technical skills in developing, maintaining, and supporting technical infrastructure, hardware, and system software
- Ability to install, maintain, and support enterprise system software and hardware, along with user support
- Expertise in security, problem-solving, scripting, programming, networking, cloud computing
Developer/programmer analyst
Developer/programmer analysts are tasked with analyzing business needs to develop, test, and maintain software applications. Using data analysis, these developers/programmers are responsible for ensuring that technical solutions align with overall business goals and act as a bridge between IT and business stakeholders.
Requirements: Developer/programmer analysts need experience with analyzing business application requirements for several areas of business, writing code and testing and debugging software applications, and architecting and designing technical solutions. This role typically requires at least a bachelor’s degree in computer science, IT, software engineering, or mathematics and engineering.
Certifications: Relevant certifications include AWS Certified Developer, Microsoft Certified: Azure Developer Associate, Java SE Programmer, and C programming certificate
Skills and experience to look for:
- Strong database management and programming skills
- Strong analytical skills and the ability to translate findings into technical solutions
- Experience working with web frameworks and tools, cloud and DevOps, and system integration
- Project management, communication, and security and compliance skills
Senior consultant
Senior consultants are typically brought into organizations to help guide different teams, initiatives, and projects that may be complex, often involving different departments and stakeholders. These consultants help facilitate communication, establish the scope of projects, identify deliverables, and communicating progress to senior leadership.
Requirements: Hiring companies typically look for senior consultants with a bachelor’s degree in computer science, management, or an IT-related discipline. You’ll also need at least four years of experience leading complex team initiatives, and a strong working knowledge of technology and the IT services industry.
Certifications: Certifications will vary depending on your area of expertise.
Skills and experience to look for:
- Strong ability to manage complex projects by delivering plans, executing deliverables, and identifying potential risks
- Communication and collaboration skills to communicate project progress to senior leadership
- Ability to mentor, coach, and lead teams, offering support and guidance to help keep projects efficient, on-time, and within budget
- Ability to coordinate across departments to maintain a delivery deadline
Systems administrator
Systems administrators are responsible for managing an organization’s complex systems hardware and software, with the size and scope dependent on the size of the organization. But no matter the organization’s size, systems administrators are charged with installing, patching, and upgrading operating systems, identifying hardware and software issues, and configuring operating systems software.
Requirements: Typically, employers look for a bachelor’s degree in computer science or a related field, while some may only require an associate’s degree or technical training certificate.
Certifications: Microsoft Certified Systems Administrator (MCSA), Microsoft Certified Systems Engineer (MCSE), Sun Certified Systems Administrator (SCSA)
Skills and experience to look for:
- Strong analytical, troubleshooting, and problem-solving skills
- Technical skills in configuring, optimizing, monitoring, and upgrading operating system software and servers
- Experience installing operating system software, patches and upgrades, as well as troubleshooting and resolving system hardware, software and networking issues.
Desktop support analyst
Desktop support analysts are tasked with overseeing the maintenance and troubleshooting for desktop hardware, software applications, network systems, and other IT infrastructure. It’s often a role that is customer-facing, whether those customers are internal or external, and requires a focus on problem-solving, providing technical support, and maintaining IT systems.
Requirements: Desktop support analysts typically need at least 5 years of experience installing and supporting enterprise hardware and software, depending on the role. A bachelor’s degree is typically required in a computer-related field, but some employers are willing to drop degree requirements for additional work experience.
Certifications: HDI Desktop Support Technician, HDI Support Center Analyst, CompTIA, Microsoft Certified IT Professional, and Microsoft Certified Systems Administrator
Skills and experience to look for:
- Strong technical skills around hardware, operating systems, software and applications, and networking and system security
- Strong soft skills including problem-solving, communication, customer-service, and collaboration
- Experience working in IT support roles, troubleshooting diverse hardware and software environments, and managing ticketing systems
Help desk – tier 1
Help desk support technicians at the tier one level are responsible for taking customer service calls, troubleshooting, and escalating more challenging issues to tier two support. This is the first step on a career in technical assistance, working directly with clients, customers, and internal employees.
Requirements: Candidates for this role should have experience with working on IT teams, providing technical support, and a strong customer service skill. The role typically requires at least an associate’s degree from a technical school, however, organizations will also consider hands-on experience in lieu of formal education.
Certifications: Relevant certifications include Google IT Support Professional Certificate, CompTIA A, and CompTIA Network+.
Skills and experience to look for:
- Strong teamwork, collaboration, and communication skills
- A strong knowledge and understanding of service-desk tools such as ServiceNow, Zendesk, and Jira Service Desk
- Experience working on a service desk or in a help desk role
- A background in customer service, technical support, and team management
See also: