Subscribe to Indeed Hiring Lab

Keep up with the latest

Occupation Spotlight

Indeed Tech Skills Explorer: Right Skills for the Right Tech Job


This is the fourth and final part of the Indeed Tech Skills Explorer — an interactive look at which tech skills are in demand and which tech jobs are using those skills. This report looks at the top skills for common tech jobs. For these reports, we searched for more than 500 tech skills in US postings for tech jobs on

Key points:

  • Software engineers typically need to know Java, C++, or Python, and often several of those programming languages.
  • Data scientists tend to use Python, R, or both, along with machine learning methods.
  • Front end developers work with JavaScript, CSS/HTML, and one or more popular JavaScript frameworks like React.js or Angular.
  • Full Stack Developers need a mix of all skills, with JavaScript the most common, followed by Java and SQL.

The skills tech workers need to have vary a lot depending on the role. Learning C++ if you want to work as a web developer is probably not the best use of your time, nor is learning Angular if you want a job as a data scientist. Check out our interactive tool showing the top 10 tech skills for over 500 tech job titles. 

Still, some skills are widespread across many tech jobs. These include command of at least one general purpose programming language like Python or JavaScript, familiarity with popular workflow tools like Git and JIRA, and the capability to query a database, whether with SQL, noSQL, or some variation. All these capabilities are useful in a wide range of tech jobs. To get more specific, it’s helpful to look at the top skills used in particular tech jobs. 

Let’s look at the top tech jobs. The figure lists the 15 most common tech job titles in 2019 through September appearing in US Indeed job postings. The number one job title in the field by far is software engineer, followed by senior software engineer. 

January is an important time for tech jobs – for both employers and job seekers. In the US, the tech job postings share is highest, on average, earlier in the year. In January, tech jobs have been 5.8% of all jobs, on average, from 2014 through 2019. This tech job share typically declines through the summer, bottoming out at 5.4% in August, and then slightly rebounds to 5.5% in December. While there is year-to-year variation, these trends tend to hold. So tech employers clearly have a push to hire more after the holidays. That means tech job seekers have the most options then too.

So now, January, is the prime time for the tech job market. What are the right skills for the tech job you’re looking to fill or be hired for? We’ll look at the top skills appearing in Indeed job postings for four paradigmatic tech roles: software engineer, data scientist, front end developer, and full stack developer. 

Software Engineer 

Software engineers need to write, uh, software, which means knowing at least one or preferably several programming languages. The top six skills in Indeed software engineer postings are the programming languages Java, C++, Python, JavaScript, C#, and C, while .NET lands in tenth place. Of course, the most useful language to know depends greatly on the specific software engineer job in question.

Data Scientist  

By far the two most common data science programming languages are Python and R. Python is the leading skill, appearing in 79% of postings, and R is third at 64%. An aspiring data scientist should at a minimum be fluent in one or both of these tools. Hadoop and Spark — Big Data tools for analyzing huge data sets — are numbers five and six for data scientists. 

Other top data science skills are not programming languages, but rather statistical methods or disciplines. Machine learning, the umbrella term for statistical techniques used for prediction, is the second-ranking tech skill for data scientists, while deep learning is tenth. Some proprietary software products like SAS and Tableau make the top 10, although they’re far less common than their open source equivalents. 

Front End Developer 

Front end developers specialize in making websites aesthetically appealing and functionally sound. Unsurprisingly, JavaScript, CSS, and HTML are the top tools listed. JavaScript is almost assumed, appearing in 81% of postings. After those core skills, knowledge of some web framework is good to have, whether it’s React.js or Angular.

Full Stack Developer  

Full stack developer is a hard-to-define tech job. Essentially, people with this job are software engineers who don’t just write source code, but deploy web applications, query databases, write tests, and even do data analysis. The job can require you to do almost anything. Thus, the top skills are a combination of software engineer and front end developer capabilities: JavaScript, of course, plus another programming language, usually Java, SQL, and associated web development tools.


Tech jobs are notorious for requiring specific, but ever-changing skills. The knowledge required for a given tech job can add up fast, and people who want those jobs must be quick and agile. To thrive in today’s tech world, you must be adept in a shifting menu of programming languages, web frameworks, libraries, databases, statistical methods, workflow tools, and platforms. Each tech job demands its own mix of skills. The challenge for job seekers is to find those positions that are well-matched with their individual skill sets. 


We use a list of over 500 tech skill terms to query the job descriptions of postings on between September 2014 and September 2019. Only US English language postings having one of these tech job titles were considered. One cautionary note: Multiple skills can appear in the same job description and some terms can appear in multiple distinct skills, like “SQL” and “SQL server.”