Software developers work best in teams. Here’s how AI is helping

Two people discussing code on a computer

Luis Alvarez/Getty Images

The popular perception of software developers for decades has been that of brainy and somewhat introverted types who do their best work alone. But research suggests today's software professionals are actually extraverted, preferring to work as actively as possible within broad teams and with end users. What's more, with artifical intelligence (AI) sweeping through IT shops, opportunities for higher-level advisory roles will only accelerate. 

That's the conclusion from a recent survey of 500 developers by code-hosting platform GitHub. “Developers thrive in collaborative environments,” writes Inbal Shani, chief product officer at GitHub. The bottom line is that “developers want to upskill, design solutions, get feedback from end users, and be evaluated on their communication skills.”

Also: The developer role is changing radically, and these figures show how

The survey shows that developers work with an average of 21 other developers on a typical project, and 52% report working with other teams daily or weekly. They rank regular touchpoints as the most important factor for effective collaboration. Yet developers also say they spend too much time on builds and tests, and current performance metrics do not adequately represent the contributions they make to their organizations.

Shani believes developer experience should be just as much of a priority to organizations as customer experience and user experience. The best path to code quality is through a productive developer experience that is built on collaboration across the board. 

“Too many pings and messages can affect flow, but there's still a need to stay in touch,” she observes. “In our survey, developers say effective collaboration results in improved test coverage and faster, cleaner, more secure code writing — which are best practices for any development team. This shows that when developers work effectively with others, they believe they build better and more secure software.”

Developers in the survey say they're currently measured by the number of incidents they resolve. However, they believe that how they handle those bugs and issues is more important to performance — in other words, code quality over quantity. Developers also believe collaboration and communication should be just as important as code quality in terms of performance measures, yet only 33% report that their companies use collaboration and communication as a performance metric.

Also: Low-code platforms mean anyone can be a developer 

AI now plays a role in freeing up developer time and resources to pursue greater collaboration, the GitHub survey finds. As described in a recent piece by my ZDNET colleague Steven Vaughan-Nichols, developers in the survey see AI coding tools as a way to meet existing performance standards with improved code quality, faster outputs, and fewer production-level incidents.

Industry leaders concur that AI — in particular, generative AI — has the potential to elevate developer roles within their enterprises to that of advisors and business advocates. “As generative AI tools become more commonplace, we expect demand for IT professionals to shift from a builder role to a facilitator role,” says Patrick Stokes, executive VP and general manager for Salesforce Platform. 

“Organizations will pressure IT to democratize application development while ensuring that proprietary business and domain data are available to the AI assistants but kept within the trust boundaries established by the business.”

Also: How to use ChatGPT to write code

The automated development and deployment of software made possible through AI “has expanded the remit of conventional IT pros, agrees Rajesh Kumar R., CIO at LTIMindtree. “The hyper-automated environment has freed up the bandwidth of IT pros, enabling them to actively engage in mindful innovation and invention, solve complex business problems swiftly, and enhance usability of software, rather than spending time on repetitive tasks,” he says.

“In its current form, generative AI stands to enhance developer productivity as it builds codes on demand for simpler and proven algorithms, increase code quality in test cases, and improve maintainability as it documents the code.” 

Developments in generative AI “represent a massive step forward in this journey because almost anyone can ask an AI to produce a functioning program,” says Stokes. “Instead of spending hours writing that code, they can spend that time testing it, securing it, and tweaking its interfaces to satisfy its users best. The outcome is higher quality apps in much less time produced by people who will inevitably be even closer to the end-user experience.”



Source