Published on: May 20, 2024
9 min read
As part of our blog series, we share real-world examples of how we integrate AI throughout our software development lifecycle and how we use metrics to gauge their success.
Generative AI marks a monumental shift in the software development industry, making it easier to develop, secure, and operate software. Our new blog series, written by our product and engineering teams, gives you an inside look at how we create, test, and deploy the AI features you need integrated throughout the enterprise. Get to know new capabilities within GitLab Duo and how they will help DevSecOps teams deliver better results for customers.
GitLab Duo, our suite of AI-powered features, has transformed our internal engineering workflows, driving efficiency gains across our development process. As strong proponents of dogfooding and transparency, we wanted to showcase how our teams leverage AI, including standouts like GitLab Duo Code Suggestions and GitLab Duo Chat, daily to streamline development processes, reduce manual effort, and enhance productivity. You'll learn about the benefits we've experienced for highly technical teams like engineering to less technical teams such as technical writing and product management.
Discover the future of AI-driven software development with our GitLab 17 virtual launch event. Watch today!
Our teams have integrated GitLab Duo's many features into their daily routines. Here are some examples of how GitLab Duo is helping them carry out everyday activities.
Watch Gosia use GitLab Duo Merge Request Summary:
Watch Gosia use GitLab Duo to answer coding questions:
Watch Gosia use GitLab Duo to explain complex code snippets:
Condense comment threads: Bartek Marnane, Vice President of Expansion Software Development, uses GitLab Duo to condense lengthy comment threads into concise summaries, ensuring all relevant details are captured when updating issue descriptions.
Create new documentation: Taylor McCaslin, Group Manager, Product - Data Science Section, leveraged GitLab Duo to create new documentation for GitLab Duo itself, exemplifying a meta use case that enhances clarity and consistency and greatly reduces the time to document new features.
Craft release notes: Amanda Rueda, Senior Product Manager for Product Planning, uses GitLab Duo to craft brief, impactful summaries for release notes, highlighting changes and their value to users. By using well-crafted prompts like below, Amanda supercharges her workflow and ensures that each release note is clear, concise, and user-focused, enhancing the overall communication and user experience:
“Please create a two sentence summary of this change, which can be used for our release notes. The tone should be conversational and should be in second person. The summary should include a description of the problem or change and be tied to the value we are creating for you, the user.”
Optimize docs site navigation: Suzanne Selhorn, Staff Technical Writer, tapped GitLab Duo to optimize the left navigation of documentation by providing a workflow-based order of pages. Suzanne provided a list of features to GitLab Duo, which generated the optimal order, updating the left navigation to match. GitLab Duo also drafted the Getting Started documentation much faster than were she to use traditional, manual approaches.
Draft and refine OKRs: François Rosé, Engineering manager, Create:Code Review Backend, finds GitLab Duo Chat invaluable for drafting and refining OKRs. By articulating objectives more clearly and effectively, François enhances goal setting and team alignment. Using Chat, François ensures that each OKR is precise, actionable, and aligned with the team's goals, thereby improving overall team performance and cohesion. Here is an example prompt he uses:
"Here is an OKR I am thinking of creating:
Objective: Retrospect on retrospectives, to foster a thriving team
KR: Measure retrospective satisfaction from 100% of team members
KR: Identify 3 improvements to the async retrospectives
KR: Implement 1 improvement
Please provide direct feedback on how to improve the formulation of this objective and these key results."
Streamlined hiring and recruitment processes: Chat helped Denys Mishunov, Staff Frontend Engineer, formulate a clear and concise text for updating the email template for technical interview candidates. The team collaborated on refining the communication to ensure candidates receive all necessary information using a merge request. This example showcased the practical application of AI tools in enhancing communication processes within the hiring workflow.
Summarize production incidents: Steve Xuereb, Staff Site Reliability Engineer, employs GitLab Duo to summarize production incidents and create detailed incident reviews, streamlining the documentation process.
Create boilerplate .gitlab-ci.yml
files: Steve also uses Chat to create boilerplate .gitlab-ci.yml
files, which significantly sped up his workflow. Chat serves as a valuable partner for suggesting ideas. Additionally, Code Explanation provides detailed answers that are helpful during incidents, enhancing his productivity and understanding of the codebase.
Full-stack development: Peter Hegman, Senior Frontend Engineer, has been using Code Suggestions for his JavaScript and Ruby development. This highlights that Code Suggestions has become a powerful tool for developers moving across a full technical stack.
Generate Python scripts: Denys conducted an experiment using GitLab Duo for a non-GitLab task. This example highlights the flexibility and utility of our AI tools beyond typical software development tasks.
/explain
feature is particularly useful for understanding external projects imported into GitLab. This capability was highlighted in a recent livestream he did with open source expert Eddie Jaoude. Michael let us know, "I use /explain
on external projects to understand the source code. I pitched this idea for learning about open source projects, dependencies, etc. during the livestream." This feature is invaluable for developers who need to quickly grasp the functionality and dependencies of unfamiliar codebases, significantly improving their efficiency and understanding.The integration of GitLab Duo has brought about numerous positive impacts, significantly enhancing our engineering and product development workflows:
GitLab Duo has helped to not only improve our efficiency but also to enhance the quality and speed of our development processes, illustrating the transformative power of AI in software development.
We are committed to further integrating AI into our workflows and continuously improving GitLab Duo features based on internal feedback and evolving needs. The ongoing collection of use cases and metrics with the AI Impact analytics dashboard will guide enhancements and ensure that GitLab Duo remains at the forefront of AI-driven development tools.