Categories
APIs Community

What makes up a high-quality API

With third-party APIs, developers can leverage the power of external expertise to enhance the functionality of their applications. However, to ensure success, they must carefully evaluate the quality of APIs before incorporating them into their applications. This chapter aims to investigate the key characteristics that make third-party APIs high-quality, according to developers.

In recent years, application programming interfaces (APIs) have become a key part of modern software development. APIs act as intermediaries that facilitate communication between different applications through established protocols and definitions. By using APIs, developers can leverage the power of other applications without needing custom integrations. In turn, this allows them to focus more on building the core parts of their applications and less on recreating features that already exist or are not feasible.

With this in mind, it is unsurprising that almost all developers (89%) report using APIs in their projects. According to our data, 74% of developers use third-party APIs while 15% state that they only use private or internal APIs. Using private/internal APIs makes it easier for developers to link their in-house applications together and ensures that only authorised personnel can access their systems and internal information. On the other hand, using third-party offerings gives them access to external expertise but introduces additional dependencies that can affect their projects.

high-quality API

74% of developers use third-party APIs

With so many developers relying on third-party APIs to expand the scope of their applications, modern services are becoming increasingly more likely to offer public APIs. However, not all APIs are created equal. Just as high-quality APIs can enhance the capabilities of a given application, adopting a low-quality API can be detrimental to its success. Implementing low-quality solutions can create a wide range of issues such as poor performance, negative user experience, and security vulnerabilities. Therefore, developers must carefully evaluate the quality of APIs before incorporating them into their applications.

In the latest edition of our global developer survey, we asked developers who use third-party APIs to identify the most important characteristics of high-quality API offerings. Our results indicate that developers consider security, documentation and sample code, reliability, ease of use, and performance to be the most important characteristics of high-quality APIs. These five qualities separate themselves from the rest as the core pillars of strength developers look for when considering third-party APIs. In fact, 89% of those who use third-party APIs mention at least one of these characteristics in association with high-quality APIs.​

Security is the most important factor in evaluating the quality of third-party APIs, according to 42% of developers. Using third-party offerings opens up a line of communication with external services that can expose their users to unauthorised access to sensitive data and other security risks. To keep up with the rapidly evolving landscape of threats, developers and modern businesses must ensure that the APIs they use are secure to protect their assets.

Developers consider security to be the most important attribute of a high-quality API

Having access to clear documentation and sample code can make it substantially easier for developers to incorporate APIs into their applications. Our data suggest that 39% of developers consider documentation and sample code to be among the most important qualities in third-party APIs.

These features allow developers to quickly understand the capabilities and limitations that a given API brings and make it easier for them to get started. This goes hand in hand with ease of use, which is mentioned by 37% of developers who use third-party APIs.

On the other end of the spectrum, reliability (38%) and performance (36%) of third-party APIs can directly impact the success of a given project. If an API proves to be unreliable, it can lead to issues ranging from minor errors to system failures and data breaches.

On the other hand, reliable APIs help developers minimise the risk of something going wrong and ensure the highest chances of success in their projects. Similarly, applications can only perform as well as the APIs they use.

Therefore, it is essential for APIs to be fast and capable of handling high volumes of requests to be used in modern applications.

high-quality API

Those who are new to the field of software development tend to work on less challenging problems and can often turn to their peers and mentors for support. As such, they are the least likely (20%) to cite documentation and sample code as an important characteristic of a high-quality API and tend to prioritise other features.

However, as they gain expertise and take on more complex projects, developers begin to appreciate the benefits that clear documentation and sample code bring to the table. In fact, 65% of developers with 16+ years of experience mention documentation and sample code among the most important characteristics of high-quality third-party APIs, surpassing even security (51%).

Highly experienced developers value API documentation and sample code significantly more than beginners

With a greater reliance on self-guided learning, experienced developers become less likely to focus on the community when evaluating the quality of third-party APIs. However, technical issues can arise regardless of experience and may be difficult to resolve or diagnose without expert-level knowledge. In turn, technical support appears to retain its above-average importance for all but the most experienced developers.

high-quality API

With more years of experience, developers gain a deeper understanding of what is essential for their projects. For some, performance may be critical, while others may focus more on ease of use. By focusing on the right characteristics of third-party APIs, developers can enhance the functionality of their applications and deliver better products.

Would you like to contribute to similar findings?

Participate in our latest wave of the Developer Nation survey!

Complete the survey to access our amazing virtual Goody Bag filled with subscriptions, resources, and more!

Sign up for the chance to win prizes, earn loyalty points, and receive updates on survey results and future opportunities.

Take the survey anonymously here

Categories
Tips

Top career aspirations amongst student developers

Having long-term career aspirations can provide students with a sense of direction and help them make appropriate choices in their pursuit of knowledge. In turn, this speeds up their professional development and increases the likelihood of them achieving a successful career. In this chapter, we will take a closer look at the top career aspirations of developers who self-identify as students.

Solving problems is the top career aspiration among student developers, mentioned by nearly a third (32%) of them. This is closely followed by becoming an expert in a domain or technology (29%), building innovative products or services(27%), and working on challenging projects (26%). These findings suggest that, despite an apparent financial appeal,curiosity and chasing innovation are the primary motivators for students in their journeys to becoming professional software developers.

However, it is worth noting that maximising their earning potential is important for students too, ranking sixth on the list of top career aspirations.

Having good problem-solving skills when working on challenging projects is usually the key to building innovative products and services. As such, it is no surprise that these aspirations are frequently mentioned together by students who want to become professional developers.Those who want to build innovative products or services show an above-average level of interest in becoming entrepreneurs or working at esteemed companies. Furtheranalysis reveals that aspiring entrepreneurs are more likely to focus on maximising their impact on society, while those who express a desire to work for acclaimed companies show more interest in pursuing challenging projects.

Students who seek to become tech executives or company leaders place significantly lower importance than average on the most popular career aspirations. Instead, they prioritise building their own businesses while also showing an above-average level of interest in getting a specific job title. This is likely due to them being naturally career-focussed and prioritising pathways that will allow them to achieve their long term goals. On the other end of the spectrum, those who want to maximise their impact on society show a similar level of interest in building their own businesses. These developers are the most likely to aspire to build innovative products or services while also showing a high level of interest in mentoring and helping others grow.

As with most other topics, regional differences in culture and socio-economic circumstances manifest themselves as significant differentiators in career aspirations amongst student developers. For instance, South Asia is the region with the highest concentration of developers who self-identify as students (40%). In this region, 30% of students aspire to work on challenging projects -their top motivation-but are significantly less likely than students in other regions to show an interest in solving problems (26%) or building innovative products/services (22%). Instead, South Asian students are the most likely to prioritise obtaining a specific job title (16%) while also showing an above-average level of interest in becoming tech executives or company leaders (15%).

Students in South America, Eastern Europe, and Western Europe show the highest levels of interest in the global top-four career aspirations. However, while European students are significantly more focussed than average on maximising their earning potential (>30%), only 21% of their South American counterparts prioritise this when planning their careers. Instead, South American students are highly focussed on securing job opportunities at esteemed companies/organisations. In turn,they may be more likely to accept junior positions and lower salaries in exchange for job security and a promising career path.

East Asian students are the least likely to express a specific interest in becoming professional software developers. This suggests that students in this region have doubts about pursuing careers in software development and may be looking at other, unrelated jobs. Similarly, students from theGreater China area show below-average levels of interest in many of the top choices. In particular, we find that only 6% of them prioritise building their own businesses or becoming entrepreneurs, which is 19 percentage points below the average of the other regions. However, maximising their earning potential appears to be the key driving force behind why 33% of the students from the Greater China area want to become professional developers.

In North America, a high portion of students aim to become entrepreneurs while also showing the highest level of interest in maximising their impact on society. This is likely due to the highly prominent startup culture in this region. This effect is most apparent in Silicon Valley, which has established itself as the nexus of technological innovation and is home to many tech giants and startups. Similarly, students from the MiddleEast and Africa also show high entrepreneurial spirit in a region that is primed for a booming startup scene. In addition to this, the students in this region are the most likely to prioritise transferring their knowledge and experience to the next generation (28%).