To learn more about what’s happening within the world of the developer experience, we went to the expert and VMblog spoke with David Ben Shabat, VP of R&D at Quali.
VMblog: How would you define developer experience?
David Ben Shabat: Traditionally, the developer experience refers to how easy and enjoyable it is for software developers to build applications and products. A good developer experience aims to make developers as productive, focused, and happy as possible by removing friction and obstacles through tools and technologies that are powerful yet intuitive and simple to use.
The business context behind improving the developer experience, though, is achieving consistency and speeding application development to improve business outcomes without burdening developers with the additional cognitive load of worrying about costs, security, infrastructure configurations and other considerations that can hinder their productivity and diminish their quality of work.
VMblog: Why is the developer experience an increasing priority for businesses?
David Ben Shabat: From the personnel side of the issue, it’s important for them to retain talent. Any time employees leave, their experience and knowledge go out the door with them. In a market with historically low unemployment in the U.S., the right talent is scarce and difficult to retain. Recruiting and training new employees is costly and time consuming.
Again, the purpose of improving the developer experience is removing the obstacles and burdens that would increase their cognitive load. By doing so, developer productivity is improved which potentially drives quicker time to market.
VMblog: What are some of the infrastructure-related challenges that slow application development?
David Ben Shabat: There are far fewer people with the requisite cloud infrastructure expertise to configure and provision infrastructure than there are developers who need that infrastructure to do their job. Many have to initiate a ticketing process and wait for infrastructure and operations (I&O) teams to work through long queues before they have the infrastructure they need to get to work.
In some cases, developers are burdened with taking cloud resource consumption and compliance policies into consideration which gets in the way of their ability to be effective and productive. Quite frankly, this is not the developer’s job, and they should be able to focus on building, testing, etc.
VMblog: What are potential drawbacks for developers trying to provision and manage their own infrastructure?
David Ben Shabat: I think the “you build it, you run it” mentality is waning. But those teams still asking their developers to “code” their own infrastructure using Terraform or other IaC technologies, are opening themselves up to a whole host of problems.
With insufficient knowledge to configure and manage infrastructure, they are increasing the likelihood of misconfigurations that can introduce security vulnerabilities or infrastructure inconsistencies throughout the pipeline that often result in escape defects and other complications that are detrimental to the business.
VMblog: What are some best practices for improving the developer experience?
David Ben Shabat: Anything that enables autonomy and freedom for developers is a good place to start.
Self-service access to infrastructure is key to providing an optimized developer experience. The ability to spin up environments with the resources and tools they need in a matter of minutes without having to worry about policies, configurations and other operational details, that’s typically an immediate improvement to the developer experience.
Businesses are increasingly emphasizing the need for governance to mitigate risks posed by security threats, cost overruns, and other infrastructure-related challenges. These risks will need to continue being addressed. I&O teams need to standardize the infrastructure used across development pipelines to ensure governance while eliminating friction and minimizing cognitive load for the developers.
This means that security, usage and costs guardrails must be embedded seamlessly into application environments, so as not to obstruct or slow down users. User permissions and roles should be used to align and assign guardrails so users can deploy fast, while operations (and the CIO) enjoy peace of mind that nothing will get broken or inadvertently mis-configured.
This is best achieved by applying automation to the configuration and deployment of infrastructure, allowing developers instant access to the right environments designed to accommodate their specific needs. Meanwhile, IT and operations teams can use automation platforms to maintain centralized control over that infrastructure, so they don’t jeopardize governance including cost guardrails and security and compliance protocols.
While governance and cost controls are mandatory for businesses, businesses need to balance governance with development velocity and developer satisfaction, so they don’t risk stifling innovation or overburdening their developers.
##
About David Ben Shabat
David leads product R&D for Quali. Before joining Quali, David led and built from the ground up, a high-scale cyber product at BitDam, which was acquired by Datto Inc. Prior to that, he led and built the core analytical engine and data integration products for Sisense, a big data and analytics company. David was part of Intel’s innovation team, building its next generation Wi-Fi technology. He was a Commander, ex-special forces in the IDF and earned an MS in Computer Science.





