Jump to Content
Application Development

Reimagining the developer experience with Google Cloud

September 5, 2023
Rakesh Dhoopar

Director, Outbound Product Management

Could enhancing the developer experience be the key to setting your business apart? Mckinsey research found that nearly 70% of the top economic performers are leveraging software for a competitive edge. Given that your software is a crucial differentiator, it’s essential to concentrate on the critical resources producing this software — your developers, their happiness and their experience. Google Cloud is on a mission to help every organization digitally transform their business and industry, and we’re putting developers at the center of this transformation.

Developer challenges, today

In the last decade, several trends such as “shift-left,” API-first, containers, microservices, and an explosion of choices from open-source software have transformed the developer experience. While these changes accelerate value creation for businesses, they also create new friction points and challenges.

These challenges often manifest in the following scenarios:

  • Getting started with a new cloud can be daunting and requires significant cognitive investment. Quickly, you’ll be facing a maze of disparate cloud services and APIs. 

  • As the complexity of building applications grows, developers rely upon disparate, and sometimes contradictory, knowledge sources. These range from product documentation, to product collateral, best practice information, third-party sites and other developer community information. Developers must synthesize knowledge from these disparate information silos, which requires constant context switching. 

  • The shift-left approach extends the developer’s responsibilities to include testing, security, performance and UX assessments.

Laying the groundwork for developer productivity and development velocity

Indicative of its importance, there exists a plethora of recent industry, academic, and UX research focusing on improving developer productivity and overall development velocity. From an organizational perspective, leaders and the team topologies they create, influence the culture, process, and clarity of communication that set the tone for developer experience. Google has consistently focused on working with developers to improve development velocity and has built trust with development leaders by exporting and evangelizing the methodologies, structures, and technologies that we use to make our own teams successful. We’re not only promoting the adoption of efficient and effective practices, but also empowering our customers to innovate, scale, and thrive within their industries. For example: 

  • Conducting primary developer research and reporting on findings with DORA

  • Creating and evangelizing our internal best practices like Site Reliability Engineering (SRE)

  • Contributions to security standards like SBOM and SLSA

Putting the right structures and practices in place for your teams is only the beginning of the journey. In the face of today’s challenging environment, developers require a renewed focus on how the platform and tools you’re already paying for will help them overcome the aforementioned friction points and challenges. 

At Google Cloud, we are intensifying our efforts to innovate the platform and tooling options for your developers. Our approach begins with completely reimagining the developer experience and delivering capabilities to make development fast, easy, and secure. This reimagined experience impacts every aspect of the developer journey. Commencing before you become a Google Cloud customer, our new experience is interwoven through onboarding, inner-loop development and outer-loop development so that you can continuously deliver customer value. 

The Google Cloud developer experience

We’re committing to a “modern developer experience” that empowers developers to: 

  • Stay in “flow state” longer: Developers are fully immersed in their favorite development activities and maintain context and focus. Whether they’re learning about Google Cloud services, authoring or accessing APIs, writing, testing, or debugging code, they should be able to perform most of their duties from within their IDE to minimize interruptions.

  • Shorten “feedback loops”: We aim to prevent distractions during the iterative processes that developers perform hundreds of times during the development cycle. Whether it’s validating a local code change or component integrations, or ensuring that the features they built meet customer expectations, optimized wait times during these feedback loops have a significant impact on developer effectiveness.

  • Reduce cognitive load by “shifting down”: Developers can leverage platform abstractions to automate and push more tasks into the platform. Taking full advantage of managed services reduces the mental effort on your team, and allows them to focus on value-generating tasks.

https://storage.googleapis.com/gweb-cloudblog-publish/images/image3_jDsj7gN.max-1000x1000.png

This new developer experience is brought to life by product capabilities that reimagine how you:

  • Discover and learn about Google Cloud

  • Onboard developers to Google Cloud

  • Improve inner-loop development

  • Secure outer-loop development

  • Continuously deliver value to customers

Discover and learn Google Cloud 

Our developer experience journey begins even before developers become Google Cloud customers. We understand the complexities of choosing the right cloud provider, and the myriad of technical and organizational challenges to navigate. Traditionally, organizations research information about cloud services, APIs, features, costs, and best practices from multiple information sources, performing time-consuming trial and error exercises. We aim to streamline this journey by “shifting-down” onto the Google Cloud platform. This process begins with developers asking a simple question in Google Search. For example, “How do I perform AI/ML image processing on Cloud Functions?” 

The developer is presented with a streamlined onramp that prioritizes their learning, while accelerating their workload deployment. After deployment, developers navigate through interactive code modifications, iterative re-deployment workflows embodying Google Cloud best practices. Our workflows are designed to meet developers where they are by offering seamless integration between the Google Cloud console and the toolchains and workflows of their choice. Ultimately, the developer goes from idea, to search, to experiencing an “aha moment” in less than an hour. The process establishes a solid technical foundation to build on (i.e., deployed infrastructure, reusable Infrastructure-as-Code, and example application source code), an understanding of the technical next steps to achieve their goals, and confidence in Google Cloud.

Onboard developers to Google Cloud

When onboarding new developers, it can take weeks or even months before they become productive. Cloud Workstations, built upon Google Cloud’s opinionated security best practices, not only enhances your security posture with a centrally managed IDE but also mitigates exfiltration by preventing local storage of code. As a cloud-based, pre-configured, and centrally managed development environment, Cloud Workstations reduces the time required to provision and configure a secure development environment. From the beginning, Cloud Workstations simplifies onboarding for new and remote developers, while increasing developer productivity with fast IDE access via a web browser from anywhere. Staying true to Google Cloud’s commitment to open source and flexibility, Cloud Workstations also supports popular IDEs so your developers can work wherever they code best. To support our shift-down methodology, we are adding more capabilities to Cloud Workstations. These include:

  • Enhanced enterprise security and data loss prevention: Improved integration with BeyondCorp provides additional safeguards to ensure the safety of your code.

  • Extended IDE support: We now support Posit Workbench with Rstudio so that developers who build R-based applications can benefit from all the capabilities of Cloud Workstations.

  • Expanded infrastructure support: Cloud Workstations instances can now run on GPUs for better performance during the development and testing of AI/ML applications.

Improve inner loop development

Duet AI reimagines the developer experience with an industry-first embedded AI assistance for Google Cloud users at all manner of skill levels, across the surfaces they use to interact with Google Cloud. It uses Gen AI to foster a more intuitive experience to build, run, and manage cloud applications, data, and infrastructure services. With Duet AI natural language chat assistance, interacting with the cloud is as easy as talking with a friend, whether that’s in the console, Code editor, Cloud Workstations or Cloud Shell.

Developers can elevate their productivity by harnessing the power of gen AI to create new, enhanced experiences, all while staying engaged in a “flow state” to learn, understand, evaluate, design and implement a variety of technologies without leaving your IDE:

  • Stuck on how to complete a task? Just ask Duet AI. 

  •  Want to delve deeper into a specific topic? Request more information from Duet AI.

  • Need a quick high-level overview of a topic? Ask Duet AI for a summary. Duet AI will provide you with a concise summary of the topic.

  • Want to decide which service to use for your use case? Ask Duet AI to compare capabilities of GCP services.

Duet AI serves as a pair-programming partner and can assist with a variety of design and coding tasks for frontend, backend, fullstack and SQL developers. From designing APIs, to authoring, editing, and debugging code, developers are using Duet AI to streamline their processes and enhance their productivity through the focus-encouraged ‘flow state’ allowing them to optimize both time and effort. Duet AI also helps shorten “feedback loops” by automatically generating unit tests for you to enable faster code validation. With Duet AI's assistance capabilities, you can:

  • Generate APIs: Duet AI can automatically generate APIs that are consistent with your existing APIs and that comply with your enterprise policies. Simply specify your needs in natural language, and continue refining your APIs through the same conversational interaction.

  • Complete your code: Duet AI can suggest the next line of code while you’re authoring code in your IDE, including Visual Studio Code, IntelliJ, or the BQ Editor.

  • Generate code: Based on natural language instructions, Duet AI can generate high-quality code, saving you time and effort, particularly on complex projects.

  • Explain code: Duet AI can explain code written by you or others, so you can understand how it works and what it's doing. This can be helpful for debugging or when you're trying to learn a new language or framework.

  • Suggest and generate unit tests: Duet AI can propose unit tests for your code, ensuring you achieve maximum code coverage. This can help you catch bugs early on and avoid problems in production. 

  • Build complete low-code apps conversationally: For AppSheet users, Duet AI enables anyone to create complete low-code apps via natural language.

  • Contextually code aware: Duet AI’s deep integration with Google Cloud allows it to leverage APIs and native services to provide relevant code suggestions. With support for 20 programming languages (and growing,) Duet AI is the versatile coding companion for your entire development team.  

Duet AI also offers invaluable assistance into IP compliance risks when automatically suggesting and generating code for you. It can provide code license attribution if the suggested code falls under restrictive license, and provides the necessary context so you can make an informed choice on whether to use that code. Should the code generated require a permissive license, it provides you with the information needed to attain license attribution.

Secure outer-loop development

Today, enterprise customers are under pressure to enhance the security posture of their software supply chain while minimizing the overhead incurred when meeting regulatory obligations around their software supply chain. The shift-down mindset helps ease a developer’s cognitive load by enabling the security in the underlying platform, and strengthening software supply-chain security throughout the development lifecycle. By leveraging the totality of the platform, you can improve the security of your application, such as ensuring the security of your application’s open-source dependencies with our Assured Open Source software. The platform provides a trusted source for you to access Google curated and tested OSS packages. 

Then, to offer developers more choice and meet them where they are, we’ve expanded our DevSecOps partnership with GitLab. Combining the power of Google Cloud S3C with GitLab’s DevSecOps platform to generate a secure supply chain with end-to-end visibility. Our new partnership will empower users to leverage a seamless connection between the two when it comes to deploying software securely. This integrated application development solution will provide best-in-class reliability, efficiency and end-to-end security. In Phase 1, the integration of Artifact Registry into the GitLab SaaS offering’s workflow will enable customers to easily set up secure pipelines in GitLab that automatically connect builds to Artifact Registry and to GKE, providing a high performance, secure delivery of containers to Google Cloud with full regionalization and compliance with DRZ requirements.

Continuously deliver value to customers

The adoption of microservices and CI/CD undeniably entrusts development teams with the freedom to work independently, generate value, and accelerate development velocity. However, it’s critical to remember that these microservices are components of a larger and more intricate value chain that ultimately benefits the end user. That value chain involves integration with other microservices, SaaS services, and enterprise services. This end-to-end integration that surfaces the business flows to the end customer is the conduit of value for your customers. While there has been a lot of focus on optimizing micro “feedback loops” during the development cycle, it’s equally critical to optimize the value-delivery feedback loop so that you can learn and improve based on your customers’ feedback.

To enable this continuous value delivery, developers employ a variety of application integration techniques. These integrations require specialized knowledge of third-party apps, application integration tools, and skills to deal with ongoing maintenance of these integrations. To accelerate this continuous value delivery, integration work is also shifted down into the platform and simplified using Duet AI.

  • With 75+ pre-built connectors that can easily help you connect Google Cloud services like BigQuery and Pub/Sub with third-party applications like Salesforce, MongoDB, Oracle and SAP.

  • With Duet AI, we simplify application integration even further. You simply provide your requirements in a natural language prompt and you get a list of integration flows to choose from. Duet AI uses your enterprise context, based on which it will automatically generate flows, documentation and test cases using your existing APIs and assets helping you accelerate continuous value delivery.

The faster you can deliver this value to your end-customers, the more you can accelerate the customer-feedback loop. Whether you are delivering prototypes, preview features, or doing experiments to choose between designs, you can accelerate the delivery of your overall application to your end-users and shorten your customer feedback loop.

2023 is already shaping up to be one of the most consequential years in technology. Gen AI is redefining work across sectors, enhancing the quality, scale, and innovation of developers. Duet AI, interwoven throughout Google Cloud, allows developers of all skills to collaborate with their AI companion via the intuitive, conversational interface. Yet, the full benefits of these game-changing technologies are only realized when working in tandem with focused developers who feel support from their leadership. The shift-down methodology is more than automation checklists and managed services, it is a commitment to the health and psychological well-being of the team underpinning your entire digital infrastructure. Minimizing developer burden not only rejuvenates your teams, but refocuses their attention on innovation and value creation. To learn more about how “shifting down” and Duet AI can drive development velocity, sign up for the Duet AI early access. Embrace the change, accelerate your progress, and unlock the true potential of your team with shift-down and Duet AI.

Posted in