Categories
Community

How Generative AI will affect developers’ work

We all remember back in March when prominent leaders, researchers, and figures in tech, most notably Elon Musk and Steve Wozniak, signed a letter advocating for a six-month pause of giant artificial intelligence (AI) experiments. Despite the letter prompting a wide discussion and raising both ethical and practical concerns that were acknowledged by many in the field, few were surprised that the letter had a negligible impact on slowing the pace of research.  

Now, approximately six months following the letter’s initial publication, we check in with those who are among the closest to the subject in question: developers. In our latest Developer Nation survey, we collected insights, perspectives, and real-world experiences from over 17,000 developers worldwide, delving into the impact of generative AI on their careers and work now and in the future. 

In this article, we present our analysis from a snapshot of the data collected to offer insight into how developers perceive the future of generative AI; specifically how it relates to their role as a developer.

Various studies that measured AI’s impact on worker productivity in different roles have been published this year. In this chapter, we do not delve into productivity metrics, but rather, we present developers’ views and perceptions about how generative AI will affect their productivity, work, and the world. 


Highlight

80% of developers believe that generative AI will increase their potential and productivity at work


💡Checkout our recent meet-up where developers from our community discussed about Impact of Generative AI in more details: https://youtu.be/OMHlve6d1bI?feature=shared

Regarding AI’s impact on their work, developers are overwhelmingly optimistic. The vast majority (80%) agree or strongly agree that AI will increase their potential and productivity, while 70% agree or strongly agree that it will give them access to new programming tools. Throughout our many years of tracking and researching developers’ preferences and behaviours, we have found that the community is incredibly heterogeneous. There is substantial variation in developers’ educational backgrounds, technology choices, and professional preferences. Hence, this remarkable consensus regarding the impact of AI on their workflow is striking. It sends a clear message about generative AI’s positive potential: only 7% of developers disagree or strongly disagree that AI’s net impact on the world will be positive!

While generative AI’s potential is great, developers clearly still harbour some reservations as well. 61% of developers agree or strongly agree that generative AI raises many ethical concerns. While we did not ask our survey respondents to specifically identify which ethical concerns they are most preoccupied with, one of the primary ethical concerns regarding AI that has received considerable attention this past year is its potential to displace workers.

Developers are somewhat split about generative AI’s potential to displace them in their current roles. 32% of developers strongly agree that AI will surpass their skills and render their jobs obsolete, while 40% either disagree or strongly disagree that this is actually a feasible outcome. How developers feel about AI’s potential to replace their jobs depends on a number of factors, but one critical factor is their current role. The following section examines the differences in perceptions across various roles. 

Will AI replace developers?

Segmenting developers by ten of the most popular roles, we examine which roles have the highest concerns about potential replacement. CIOs, CTOs, and IT managers are the most likely (40%) to strongly agree that generative AI could surpass their skills and render their role obsolete. Initially, this result is somewhat counter-intuitive as managerial skills are unlikely to be replaced in the foreseeable future by generative AI due to the variety and complexity of tasks that managers often face. However, these specific roles are frequently responsible for monitoring a company’s technology, infrastructure, and data for – among other metrics – accuracy, efficiency, security, and efficacy; all of which are quantifiable. 

While AI surpasses a human’s ability in terms of speed and accuracy of monitoring various quantitative metrics, we do not foresee a future where these roles are no longer present, rather, the technical aspect of the roles are altered; a notion supported by 41% of developers in these roles. These roles are more than likely going to evolve or be reimagined to compensate for the additional capacity granted by AI. 

Developers working or studying as data analysts, scientists, and/or researchers make up the next three roles that are most likely (37%-40%) to strongly agree their skills will be surpassed and their jobs could be rendered obsolete. However, roughly an equal or greater number of developers in these data-driven roles strongly disagree.

Generative AI has made great strides in several areas, including data analysis and code generation. While the progress is impressive, what is equally striking is how difficult it can be to differentiate correct from false/hallucinated answers and incorrect analytical applications or interpretations unless the developer has domain-specific knowledge. Hence, while these researcher and data-handling roles have already been substantially impacted by AI and will surely continue to be, developers are split on the future of these types of roles.

On the opposite end of the spectrum, architects and programmers are the most likely to strongly disagree that their roles and skills can be replaced by generative AI. Most of these developers, 61% and 55%, respectively, feel their role and skills are safe from the threat of generative AI. These developers are some of the most likely to be technical experts and recognise that while AI can excel at quantifiable solutions, complex or multi-faceted problems are likely to continue to require substantial human input for the foreseeable future.

It is inevitable, however, that these roles will still feel its impact and influence in their work. Hence, in the next section, we take a look into who the developers are who feel that they can benefit from AI and gain access to additional tools through its use. 


Highlight

61% and 55% of architects and programmers respectively, disagree or strongly disagree that Generative AI will surpass their skills and render their jobs obsolete


Will AI allow developers to access new tools and technologies?

One of the factors that significantly impact developers’ perceptions on whether generative AI will allow them to use programming tools that they previously could not is their level of experience. Overwhelmingly, 80% of developers with less than a year of software development experience agree or strongly agree that AI will give them access to new tools that would otherwise not be available. The proportion of developers who agree steadily declines to 60% as developers gain more experience, where, in turn, more experienced developers are more likely to strongly disagree with this sentiment. 

More experienced developers also have greater programming skills and are, therefore, less likely to expect that generative AI will create new opportunities for them to access additional tools. It is not a new phenomenon that younger, less experienced individuals enter a field or company and are more open to learning novel techniques or new methods, some of which can be in contrast to the established, institutionalised way of doing things. This distribution of developers’ AI perspective below conforms to this trend and demonstrates that less experienced developers perceive AI in a different light compared to the more seasoned ones. 


Insight

80% of developers in their first year of developing software strongly agree that AI will be/ is a gateway granting them access to new programming tools


However, a finding worth highlighting here is that the experts in the field – those with more than 16 years of experience – are the most likely (28%) to report being unsure, neither agreeing or disagreeing, about AI’s potential to provide them access to new tools. This degree of uncertainty from the most practised group of developers is a good indicator that the future of generative AI is still very much evolving and points to an exciting but somewhat uncertain future of how AI advancements will continue to shape the role of developers. 

Categories
Salaries Tips

How well-paid do developers feel?

Studying wages and compensation can offer insights into the supply and demand of various skill sets in an employment market. Despite recent layoffs across many technology companies, our data indicate that the number of professional developers across the globe continues to rise. A driving factor in the persistent growth of developers worldwide is that modern enterprises recognise the fact that, as technology becomes increasingly intertwined with society, all companies are or will ultimately become technology companies. 

This means that grocery store chains, online commerce platforms, and car manufacturers alike must all compete against one another to attract developers. Compensation is one of the principal means used to vie for said talent. Understanding the compensation landscape for developers can help companies make informed decisions about salary, bonuses, equity, and other benefits they offer to attract and retain skilled developers. Likewise, studying compensation can aid developers in making decisions about their own careers, including negotiating salaries and benefits. 

In this chapter, we present findings from SlashData’s latest Developer Nation survey – the 24th edition – exploring developers’ compensation patterns. We look at differences across regions and note how developers and companies alike, when negotiating compensation, need to take into account differences in costs of living and expenses. Further, we will examine developers’ self-perceptions regarding their salaries and what factors are associated with believing that they are under or overpaid. 

The compensation landscape for professional developers varies greatly across the globe. In our latest survey, we collected information from developers living in more than 160 countries across the globe. As expected, the distribution of reported annual compensation reflects the diversity of respondents and the myriad of personal situations. 

According to our data, 9% of professional developers earn less than $1,000 per year in total compensation – including base salary, bonuses, stock options, and other perks. This group encapsulates many of the developers working part-time, starting off their careers in internships, or working on commission. As expected, reported annual compensation is significantly correlated with overall experience in software development. Hence, as developers gain experience, they are able to command higher compensation. When we control for the differences across the globe, we find that, on average, for every year of experience a developer gains in software development, they earn nearly $4,000 more each year. 

On the upper end of the spectrum, we find that roughly 6% of professional developers earn more than $200,000 per year. According to the World Inequality Database, in almost every country in the world, workers earning above $200K a year belong to the top 1% of earners in that country. This is one indicator that developers’ average compensation is higher than in other sectors of the economy. Below, we break down the average compensation by region to offer a bit more context to the earnings of developers.

Regional differences

North American professional developers report the highest average annual compensation – more than $100,000. The median compensation in the region, however, is closer to $75,000. Meanwhile, on the opposite end of the spectrum, developers working in South Asia report the lowest average compensation of just under $27,000 and the median compensation is around $5,500 per year. As is frequently the case with compensation, those with higher earnings greatly inflate the average, as is evident when we compare the median vs the average annual compensation. 

Anyone who has travelled outside their hometown recognises that the costs of goods and services can vary depending on where you are in the world. Compensation very often reflects these differences in the cost of living. Should developers and companies wish to compare compensation between two locales, considering these differences is crucial. 

As an example, we examine two countries with large developer populations: the United States of America and the People’s Republic of China. The median compensation of developers in the USA is around $75,000 per year. This is five times greater than the median developer compensation in China of $15,000 per year. However, when we account for differences in costs of living using the purchasing power parity index, we see that the average developer in China earning $15,000 per year can afford similar goods and services as a developer in the USA earning $25,000 a year. In practical terms, this means that developers in the USA still generally enjoy a higher wage compared to Chinese developers, but by a lesser margin (3 times more vs 5 times more) than is apparent when we directly compare compensation. 

Perceptions surrounding compensation

On top of asking developers about their current annual compensation, we also asked them about the compensation they think would be fair for their role. Just over half (51%) believe that the compensation they currently receive is fair for their role. Meanwhile, 39% believe they are underpaid, whereas 11% of developers report that their current compensation was more than what they believe is fair for their role. 

To better understand what factors are associated with developers believing they are over or underpaid, we modelled developers’ sentiments about the compensation in their current role. We find that men are significantly more likely to report feeling underpaid in their current role. More specifically, 16% of men report feeling underpaid compared to 11% of women and 14% of developers who identified as non-binary. Conversely, 7% of women feel overpaid compared to 4% of men and 1% of non-binary individuals.

We additionally see that developers with more experience and those working for larger companies are more likely to report feeling underpaid. For each additional year that a developer gains in experience, we estimate that there is approximately a 7% increase in the odds that the developer will report feeling underpaid compared to fairly compensated. This suggests that companies do not financially value experience to the same degree as developers do amongst themselves. 

However, more experience and working for a larger company are both correlated with being compensated higher. This could indicate that more experienced developers working at larger companies have responsibilities that they feel are not commensurate with their compensation. On the other hand, sentiments of being underpaid could also stem from a perception based on a lack of information, being influenced by larger companies’ generally greater profit margins, or unrealistic thinking from the developer. 

Finally, if a developer has an undergraduate degree in software engineering, they are more likely to report feeling underpaid. The odds of a developer with an undergraduate degree in software engineering feeling underpaid vs paid fairly, are 9% greater when compared to all other developers. This effect disappears, however, once developers have a postgraduate degree; as having a postgraduate degree increases the odds of feeling overpaid by 50% compared to not having a postgraduate degree.

This could indicate that companies place a lesser value on undergraduate education than developers perceive they will; possibly leading to the sentiment of feeling underpaid by those who do not yet hold advanced degrees. Other external factors, such as geographical location, also affect how a developer perceives their compensation, likely due to cost of living differences, as discussed in the previous section. 

Compensation is often considered a difficult topic to discuss and research due to the taboo nature of discussing money in many companies and cultures. Our aim with this chapter is to open up the conversation surrounding developer compensation with our analysis.

Do you like data such as the above?

If you’re a professional or hobbyist developer into Web, Mobile, Desktop, Cloud, Industrial IoT, Consumer Electronics, Embedded Software, AR & VR, Apps/extensions for 3rd-party ecosystems, Games, Machine Learning & AI, and Data science, we would like to hear your voice.

Categories
Community

Embedded Software Development

Embedded software refers to computer programs designed to perform specific functions in systems or on hardware devices that are not traditionally considered personal computers. Embedded software is found in various electronic items and plays a critical role in the functioning of modern-day technology. These necessary systems are found in simpler appliances, such as thermostats and security cameras, as well as more complex systems like medical equipment, point of sale (bank card) terminals, automobiles, and aeroplanes.

Embedded software developers are traditionally one of the smallest software development groups. As of Q1 2023, we at SlashData estimate that developers self-identifying as embedded developers comprise only around 5% of developers worldwide, a proportion that has been relatively stable for the last two years. Despite embedded developers’ modest community size, they can be found across the globe, with the largest two population clusters being North America and Western Europe – with 18% of embedded software developers in each of the respective regions. The next highest regional group is the Middle East and Africa, which collectively accounts for 15%. 

Analysing data collected from more than 25,000 developers working in 160+ countries, we delve into the lives of embedded software developers. These developers are responsible for how humans interface with many critical technologies. Hence, understanding the landscape of those building and developing embedded systems can offer salient insight into industry trends and orient companies and developers alike as to where the field is heading. 

Embedded systems and data processing

In 2022 we noted an almost 100% increase in the number of embedded developers who describe data science or data analysis as a part of their role compared to 2021. In our most recent global developer survey, around a third of embedded software developers described their role as having a data science or data analysis component. 

Data processing and analysis are becoming more intertwined with embedded systems. One contributing factor is the growth in the number of Internet of Things (IoT) devices. Embedded software is an essential operating component of IoT devices, and as the number of IoT devices continues to multiply, managing, processing, and understanding the vast amounts of data accompanying this growth is a key challenge. Many embedded system developers appear to have recognised this trend and either adapted their roles or had their roles adapted for them to include this necessary data analysis and handling component. 

What are embedded developers working on, and what markets are they targeting?

In order to better understand the embedded developer landscape, we asked developers working in this field to describe the projects they had worked on in the last six months. We find that the most common embedded software project description is “network-connected”, mentioned by 41% of developers, or “internet-connected” (36%). Both categories are fundamental to IoT devices. ​

Furthermore, 35% of embedded software developers stated they had worked on projects that processed data, while 30% stated their projects involved data storage. This project reporting again highlights the importance of data management in the embedded software development field and reinforces the importance of data analysis and processing as part of an embedded developer’s tool kit. 

“23% of embedded developers have recently worked on projects that involved signal processing. They have, on average, 24% more experience compared to embedded developers working on other projects” 

Around a third of the projects embedded software developers worked on recently involved sensor or monitoring devices. Meanwhile, 23% of embedded developers have recently worked on projects that involved signal processing – audio, video, etc. As these types of technologies that interface with their local environment continue to evolve, they will increasingly shape how humans interact with devices and their surroundings.

Embedded developers working on sensors and monitoring and signal processing technologies have, on average, 24% more software development experience than embedded developers working on other projects (an average of 5.8 years vs 7.6 years). Embedded technologies that incorporate signal processing require complex algorithms that can be computationally intensive and require specialised knowledge. This increased knowledge requirement is reflected in the additional software development experience embedded developers working with these technologies have. ​

In addition to being slightly more experienced, embedded developers working on sensory projects utilise the C programming language significantly more than other embedded developers. Embedded developers working on sensory projects use the C language more than half the time, 54%, compared to 40% of other embedded developers. We believe the inflated use of C here is likely due to its efficiency and popularity in the field of signal processing data. 

Where is embedded software used?

Embedded software is utilised in an array of devices and for various applications. Hence, the markets that embedded software developers target are as diverse as the features the embedded software provides. We find that the most popular market is smart home appliances, targeted by 30% of embedded developers. As many IoT devices are increasingly sought after and can be found in the home – refrigerators, washing machines, doorbell cameras, etc. – this category’s lead aligns with our market observations. 

“30% of embedded software developers are targeting smart home appliances – where many IoT devices are traditionally found” 

Robotics comes in second place, with 24% of embedded developers reporting that they are targeting this market with their projects. The field of robotics heavily relies on embedded software to control movement, sensors, and environmental information processing – all crucial components for a robot’s functionality. As technology continues to advance, the field of robotics and embedded software will become even more intertwined in the development of intelligent systems that can be of benefit to various commercial markets such as manufacturing, transportation, and defence. 

Embedded Software Development

Embedded software developers are at the forefront of how humans interface with many technologies. With the increasing growth in the number of IoT devices, an increased number of devices will be connected to the internet and through networks and require embedded software to operate. This will necessitate embedded software developers to handle new demands in their workflow. We expect that these increasing expectations to come from both companies and consumers – such as the ability to process and analyse data and increased demand for device internet/network connectivity in IoT, respectively – will continue to push embedded developers to further broaden their skillset to be successful in keeping up with market requirements. 

Categories
Analysis Community

Spotlight on Developers in China & the Rest of East Asia

What are some of the key differences between developers in East Asia, including the Greater China region, and the rest of the world? In the 22nd edition of our Developer Nation Survey we collected insights from developers and software engineers in East Asia to try to answer this exact question. Here is what we found!

“A fifth of the global developer population is located in either the Greater China region or the rest of East Asia”

We split the Greater China area from the rest of East Asia to provide more regional granularity. In terms of relative size, we find that almost a fifth (18%) of the global developer population is located in either the Greater China region (9%) or the rest of East Asia (9%). Breaking down East Asia into countries, we see that more than half of the developers here are spread across two countries: Indonesia (32%) and Japan (21%). When comparing developers across regions, we can see that just over a third (34%) of developers in the Greater China region have six or more years of experience, which is notably less than developers globally (43%). Furthermore, the Greater China region has a much smaller concentration (4% vs 22% globally) of highly-experienced developers (16+ years). With generally lower levels of experience in the Greater China area, aspiring developers may find starting a career here less competitive than developers in regions with higher levels of experience.

“East Asian developers outside China have similar levels of experience to the rest of the global developer population”

Both groups have a little more than a third (34%) of their developers with 11+ years of software development experience. However, East Asia’s data are largely propped up by Japan. The developer community in Japan tends to be highly experienced, with almost six in ten developers (59%) having 16+ years of experience. No other country has a higher concentration of developers with this level of experience. 

Developers in the region are mostly either self-taught or have an undergraduate degree in computing

The journey to coding mastery lacks a clearly defined path. Developers typically state they’ve used more than two learning methods on average to learn how to code. In general, the self-taught method is the most popular among developers globally, with more than 60% using this method. However, our data shows that the proportion of self-taught developers fluctuates significantly across regions.

In the Greater China area, the most popular method for developers to learn how to code is via an undergraduate degree in computing, with 50% having used this method. This is significantly higher than developers in other regions (41% -42%). We generally see a higher concentration of professional developers in Greater China (83%) than we do in the rest of the world (70%). It could be that the job market in Greater China more often requires a degree in computing or engineering, which would also explain why self-teaching is used less often in this region.

Developers in the rest of East Asia, however, tend to follow the learning trends of developers in other regions. Here, we see the self-taught method is the most popular method (61%), followed by an undergraduate degree in software engineering (41%). Analysing the data at a country level, we see developers in Indonesia are more diverse learners. Developers in this country stated that they used three methods on average when learning to code. Indonesian developers are more likely to learn via self-teaching, online courses, and developer boot camps than any other developers in East Asia. This is quite different from their peers in Japan who are the least likely to use online courses and bootcamps to learn how to code. Instead, developers in Japan are most likely to use the self-taught (63%) and on-the-job training (45%) methods when learning to code.

“Less Stack Overflow, more Segmentfault.com and Teratail.com

Next, we explore how developers interact with the popular online community, Stack Overflow, to understand their engagement levels with programming support. Stack Overflow has become a standard support community for many developers, with more than eight in ten (85%) of the general developer population reporting they’ve used or visited this popular question and answer site.

Our focus on developers in East Asia and the Greater China area shows Stack Overflow’s popularity falls below the global average. Developers in these regions are around three times less likely to visit Stack Overflow than developers in other regions. Developers in the Greater China area are the least engaged, with only 19% having an account, and only 11% having earned at least one badge. Developers in this region have other home-grown Q&A site alternatives, such as segmentfault.com, which could be contributing to the lower adoption of Stack Overflow.
Developers in Japan are skewing the perception of this region. Developers in Japan have even less activity on Stack Overflow than developers in the Greater China area. Here, only a little more than a third (36%) stated they use Stack Overflow. Furthermore, only about 5% have an account. Like developers in the Greater China area, our data does show usage of Stack Overflow increases among Japanese developers who have gained experience in software development, indicating that less experienced developers are using other platforms for support. Like China, Japan has other home-grown options like teratail.com where developers can field programming support from their peers, which may be the place new Japanese programmers visit more often to get answers to their questions.