[{"data":1,"prerenderedAt":978},["ShallowReactive",2],{"/blog/pick-your-brain-interview-kwan-lee":3,"navigation-en-us":192,"banner-en-us":620,"footer-en-us":630,"blog-post-authors-en-us-Kwan Lee":874,"blog-related-posts-en-us-pick-your-brain-interview-kwan-lee":889,"blog-promotions-en-us":914,"next-steps-en-us":968},{"id":4,"title":5,"authors":6,"body":8,"category":158,"date":159,"description":160,"extension":161,"externalUrl":162,"faq":162,"featured":163,"heroImage":164,"meta":165,"navigation":177,"path":178,"seo":179,"slug":184,"stem":185,"tags":186,"template":190,"updatedDate":162,"__hash__":191},"blogPosts/en-us/blog/pick-your-brain-interview-kwan-lee.md","How to become the best distributed software development team? My interview with GitLab's CEO",[7],"Kwan Lee",{"type":9,"value":10,"toc":150},"minimark",[11,25,28,33,36,39,45,54,57,70,73,78,82,85,88,102,105,109,112,115,120,123,126,130,133,136],[12,13,14],"p",{},[15,16,17,18,24],"em",{},"GitLab CEO Sid Sijbrandij occasionally sits down for a \"",[19,20,23],"a",{"href":21,"rel":22},"https://handbook.gitlab.com/handbook/eba/ceo-scheduling/#pick-your-brain-meetings",[],"pick your brain","\"\nmeeting with people seeking advice on open source, remote work, or discussion of other things related to GitLab.",[12,26,27],{},"It was great to find the time for us to pick Sid’s brain and learn from the history and the organizational challenges that GitLab had overcome so that we may reference them for building a better organization. There were some cultural elements, tactical organizational elements and software development process-related elements that were valuable pointers.",[29,30,32],"h2",{"id":31},"lessons-in-remote-work","Lessons in remote work",[12,34,35],{},"Having 178 people in 38 countries was quite an impressive distribution of employees across different geographies. Sponsoring travel to work with fellow members of the company was a great program that they have to bridge the distributed nature of the company. We are also a very distributed company and we want to grow a company where a distributed team can scale and collaborate actively while continuously increasing the motivation to build higher quality software at higher velocity for our customers.",[12,37,38],{},"One of the challenges of being remote is that, although we are part of one company, it is tricky for us to interact in a casual manner as we do in a physical co-working environment. GitLab promotes virtual coffee breaks and all-team meetings to promote these. People can arrange coffee breaks with others at their will to catch up. During all-team meetings, they go around introducing personal updates about themselves. The team being remote requires everybody to still feel part of one company. In order to feel part of the company, it requires participation from everybody and their willingness to share their personal lives.",[40,41,42],"blockquote",{},[12,43,44],{},"In order to feel part of the company, it requires participation from everybody and their willingness to share their personal lives.",[12,46,47,48,53],{},"At ",[19,49,52],{"href":50,"rel":51},"https://www.finetunelearning.com/",[],"FineTune",", we are not used to taking coffee breaks during the day with coworkers, but we try to have regular meetings where we try to catch up personally for the first five minutes. Our weekly company meetings have been a little bit informal and did not give opportunity for each of the members to speak. We plan to keep encouraging people to share more as we want to grow a culture of sharing more as we grow and scale.",[12,55,56],{},"Sid also described various rooms for social interaction in the company. Some more interesting venues for social interaction that were suggested by Sid were:",[58,59,60,64,67],"ul",{},[61,62,63],"li",{},"Team call four times a week (20 minutes)",[61,65,66],{},"Summit: every nine months they fly everybody to one place, for interactions that are less organized with scheduled activities and forbidden to have team meetings ('unconference')",[61,68,69],{},"Asynchronous discussions via merge requests, while they sometimes get on video call to summarize what has been concluded or decided",[12,71,72],{},"Writing things down is important due to the remote nature of the company. We have been pretty bad at keeping consistent standards on documentation and keeping them up to date. It also hinders communication flow, making it difficult to discover and share knowledge when we do not have such consistency. We are working on ways to improve this nowadays.",[40,74,75],{},[12,76,77],{},"Writing things down is important due to the remote nature of the company",[29,79,81],{"id":80},"lessons-in-organization","Lessons in organization",[12,83,84],{},"When it comes to organization and growth, what we got most out of it was that we need to find the gaps in our team and try to fill in those parts we lack when we hire new members. Currently, we have a gap in frontend tech lead, and by thinking through what gaps exist in our development and future of our company we found that we would like to find a tech lead who has extensive experience modularizing frontend software components and has worked with complex microservice APIs that would facilitate the flow of communication between frontend and backend members.",[12,86,87],{},"Some other organizational lessons learned from growing from 15 to 50 was that:",[58,89,90,93,96,99],{},[61,91,92],{},"Sid was the only Sales (non-development) team member",[61,94,95],{},"Get things done on time and having well defined tasks are very important",[61,97,98],{},"One boss to give approvals",[61,100,101],{},"No project managers",[12,103,104],{},"We want to organize ourselves so that we are making decisions quickly and moving fast. I believe that as long as the priority framework for decision-making is clear, everybody should feel free to make the decisions that move the company forward.",[29,106,108],{"id":107},"lessons-in-the-development-process","Lessons in the development process",[12,110,111],{},"In terms of development process, we realized we needed to shorten the time to release and try to keep shipping. Importance of fast iteration was emphasized by Sid and shipping fast by cutting scope.  We should not fall into the trap of building the car and not shipping when the bicycle is ready.  We also need more discipline to maintain good, coherent design documentations that allows us to be all on the same page.",[12,113,114],{},"It was interesting to see the scale of work that the distributed team worked on. When a new sprint starts, product and UX team already had designed and product team had schedules for release. Ad hoc dev teams get formed for big features (every release has around five big features and 100s of small issues), making a chat channel, discussing issue descriptions, figuring out when you hand off from backend to the frontend team.",[40,116,117],{},[12,118,119],{},"\"always finish the flow first\"",[12,121,122],{},"GitLab's approach of \"always finish the flow first\" (breadth vs depth) to take care of coordination resonated strongly since that involves more people and requires people to be on the same page to further dive in deeper. Also, the \"building better a experience\" and \"releasing a more integrated experience\" brings a lot of emergent benefits.",[12,124,125],{},"Some mistakes seen were people having hard time iterating and sometimes over engineering implementation which risks release deadline. Everyone can contribute, but at the end person doing the work makes the decision.",[29,127,129],{"id":128},"lessons-in-leadership","Lessons in leadership",[12,131,132],{},"As a final question, we asked what prevents a software company from growing.  The answer we got was the lack of ambition. We as the founders or development team may not be as ambitious as we should be. Our company has been in the ed tech industry for 10 years and had not seen much growth. What we realized was that our goals and bars were set too low. We have a lot of strong design and engineering capability that we have built up over the last six months and now it is our time to think and act with more ambitious goals. There is a lot of value in helping people to write better and measure the quality of written content since most communication nowadays is done via writing.",[12,134,135],{},"We want to become an important company that helps with not only K-12, higher-ed education in EdTech industry, but also with professional development and employability across any industry that requires written communication to succeed. We have a long way to go, but the invaluable discussion we had with Sid informed us some of the good practices to follow and a trajectory to aim for around our next growth path.",[12,137,138,143,144,149],{},[19,139,142],{"href":140,"rel":141},"https://unsplash.com/@blakeconnally?photo=B3l0g6HLxr8",[],"Cover image"," by ",[19,145,148],{"href":146,"rel":147},"https://unsplash.com/@blakeconnally",[],"Blake Connally"," on Unsplash",{"title":151,"searchDepth":152,"depth":152,"links":153},"",2,[154,155,156,157],{"id":31,"depth":152,"text":32},{"id":80,"depth":152,"text":81},{"id":107,"depth":152,"text":108},{"id":128,"depth":152,"text":129},"culture","2017-09-15","FineTune CTO Kwan Lee sits down for a 'pick your brain' meeting with GitLab CEO Sid Sijbrandij.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680355/Blog/Hero%20Images/pyb-kwan-lee.jpg",{"excerpt":166},{"type":9,"value":167},[168,175],[12,169,170],{},[15,171,17,172,24],{},[19,173,23],{"href":21,"rel":174},[],[12,176,27],{},true,"/en-us/blog/pick-your-brain-interview-kwan-lee",{"title":180,"description":160,"ogTitle":180,"ogDescription":160,"noIndex":163,"ogImage":164,"ogUrl":181,"ogSiteName":182,"ogType":183,"canonicalUrls":181},"GitLab CEO interview: Building the best distributed Dev team","https://about.gitlab.com/blog/pick-your-brain-interview-kwan-lee","https://about.gitlab.com","article","pick-your-brain-interview-kwan-lee","en-us/blog/pick-your-brain-interview-kwan-lee",[187,188,189],"cloud native","remote work","collaboration","BlogPost","lX-OB8PXneQ-hDgMhk-VdxB8qxX7lW1CpTuPXYbrWNk",{"logo":193,"freeTrial":198,"sales":203,"login":208,"items":213,"search":540,"minimal":571,"duo":590,"switchNav":599,"pricingDeployment":610},{"config":194},{"href":195,"dataGaName":196,"dataGaLocation":197},"/","gitlab logo","header",{"text":199,"config":200},"Get free trial",{"href":201,"dataGaName":202,"dataGaLocation":197},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":204,"config":205},"Request a demo",{"href":206,"dataGaName":207,"dataGaLocation":197},"/sales/?contact-topic=request-demo","sales",{"text":209,"config":210},"Sign in",{"href":211,"dataGaName":212,"dataGaLocation":197},"https://gitlab.com/users/sign_in/","sign in",[214,243,343,348,462,518],{"text":215,"config":216,"menu":218},"Platform",{"dataNavLevelOne":217},"platform",{"type":219,"columns":220},"cards",[221,227,235],{"title":215,"description":222,"link":223},"The intelligent orchestration platform for DevSecOps",{"text":224,"config":225},"Explore our Platform",{"href":226,"dataGaName":217,"dataGaLocation":197},"/platform/",{"title":228,"description":229,"link":230},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":231,"config":232},"Meet GitLab Duo",{"href":233,"dataGaName":234,"dataGaLocation":197},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":236,"description":237,"link":238},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":239,"config":240},"Learn more",{"href":241,"dataGaName":242,"dataGaLocation":197},"/why-gitlab/","why gitlab",{"text":244,"left":177,"config":245,"menu":247},"Product",{"dataNavLevelOne":246},"solutions",{"type":248,"link":249,"columns":253,"feature":322},"lists",{"text":250,"config":251},"View all Solutions",{"href":252,"dataGaName":246,"dataGaLocation":197},"/solutions/",[254,278,301],{"title":255,"description":256,"link":257,"items":262},"Automation","CI/CD and automation to accelerate deployment",{"config":258},{"icon":259,"href":260,"dataGaName":261,"dataGaLocation":197},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[263,267,270,274],{"text":264,"config":265},"CI/CD",{"href":266,"dataGaLocation":197,"dataGaName":264},"/solutions/continuous-integration/",{"text":228,"config":268},{"href":233,"dataGaLocation":197,"dataGaName":269},"gitlab duo agent platform - product menu",{"text":271,"config":272},"Source Code Management",{"href":273,"dataGaLocation":197,"dataGaName":271},"/solutions/source-code-management/",{"text":275,"config":276},"Automated Software Delivery",{"href":260,"dataGaLocation":197,"dataGaName":277},"Automated software delivery",{"title":279,"description":280,"link":281,"items":286},"Security","Deliver code faster without compromising security",{"config":282},{"href":283,"dataGaName":284,"dataGaLocation":197,"icon":285},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[287,291,296],{"text":288,"config":289},"Application Security Testing",{"href":283,"dataGaName":290,"dataGaLocation":197},"Application security testing",{"text":292,"config":293},"Software Supply Chain Security",{"href":294,"dataGaLocation":197,"dataGaName":295},"/solutions/supply-chain/","Software supply chain security",{"text":297,"config":298},"Software Compliance",{"href":299,"dataGaName":300,"dataGaLocation":197},"/solutions/software-compliance/","software compliance",{"title":302,"link":303,"items":308},"Measurement",{"config":304},{"icon":305,"href":306,"dataGaName":307,"dataGaLocation":197},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[309,313,317],{"text":310,"config":311},"Visibility & Measurement",{"href":306,"dataGaLocation":197,"dataGaName":312},"Visibility and Measurement",{"text":314,"config":315},"Value Stream Management",{"href":316,"dataGaLocation":197,"dataGaName":314},"/solutions/value-stream-management/",{"text":318,"config":319},"Analytics & Insights",{"href":320,"dataGaLocation":197,"dataGaName":321},"/solutions/analytics-and-insights/","Analytics and insights",{"title":323,"type":248,"items":324},"GitLab for",[325,331,337],{"text":326,"config":327},"Enterprise",{"icon":328,"href":329,"dataGaLocation":197,"dataGaName":330},"Building","/enterprise/","enterprise",{"text":332,"config":333},"Small Business",{"icon":334,"href":335,"dataGaLocation":197,"dataGaName":336},"Work","/small-business/","small business",{"text":338,"config":339},"Public Sector",{"icon":340,"href":341,"dataGaLocation":197,"dataGaName":342},"Organization","/solutions/public-sector/","public sector",{"text":344,"config":345},"Pricing",{"href":346,"dataGaName":347,"dataGaLocation":197,"dataNavLevelOne":347},"/pricing/","pricing",{"text":349,"config":350,"menu":352},"Resources",{"dataNavLevelOne":351},"resources",{"type":248,"link":353,"columns":357,"feature":451},{"text":354,"config":355},"View all resources",{"href":356,"dataGaName":351,"dataGaLocation":197},"/resources/",[358,391,418],{"title":359,"items":360},"Getting started",[361,366,371,376,381,386],{"text":362,"config":363},"Install",{"href":364,"dataGaName":365,"dataGaLocation":197},"/install/","install",{"text":367,"config":368},"Quick start guides",{"href":369,"dataGaName":370,"dataGaLocation":197},"/get-started/","quick setup checklists",{"text":372,"config":373},"Learn",{"href":374,"dataGaLocation":197,"dataGaName":375},"https://university.gitlab.com/","learn",{"text":377,"config":378},"Product documentation",{"href":379,"dataGaName":380,"dataGaLocation":197},"https://docs.gitlab.com/","product documentation",{"text":382,"config":383},"Best practice videos",{"href":384,"dataGaName":385,"dataGaLocation":197},"/getting-started-videos/","best practice videos",{"text":387,"config":388},"Integrations",{"href":389,"dataGaName":390,"dataGaLocation":197},"/integrations/","integrations",{"title":392,"items":393},"Discover",[394,399,404,409,413],{"text":395,"config":396},"Customer success stories",{"href":397,"dataGaName":398,"dataGaLocation":197},"/customers/","customer success stories",{"text":400,"config":401},"Blog",{"href":402,"dataGaName":403,"dataGaLocation":197},"/blog/","blog",{"text":405,"config":406},"Demo Hub",{"href":407,"dataGaName":408,"dataGaLocation":197},"/demo-hub/","demo hub",{"text":410,"config":411},"The Source",{"href":412,"dataGaName":403,"dataGaLocation":197},"/the-source/",{"text":414,"config":415},"Remote",{"href":416,"dataGaName":417,"dataGaLocation":197},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":419,"items":420},"Connect",[421,426,431,436,441,446],{"text":422,"config":423},"GitLab Services",{"href":424,"dataGaName":425,"dataGaLocation":197},"/services/","services",{"text":427,"config":428},"Contribute",{"href":429,"dataGaName":430,"dataGaLocation":197},"https://contributors.gitlab.com","contribute",{"text":432,"config":433},"Community",{"href":434,"dataGaName":435,"dataGaLocation":197},"/community/","community",{"text":437,"config":438},"Forum",{"href":439,"dataGaName":440,"dataGaLocation":197},"https://forum.gitlab.com/","forum",{"text":442,"config":443},"Events",{"href":444,"dataGaName":445,"dataGaLocation":197},"/events/","events",{"text":447,"config":448},"Partners",{"href":449,"dataGaName":450,"dataGaLocation":197},"/partners/","partners",{"config":452,"title":455,"text":456,"link":457},{"background":453,"textColor":454},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":458,"config":459},"Read the latest",{"href":460,"dataGaName":461,"dataGaLocation":197},"/whats-new/","whats new",{"text":463,"config":464,"menu":466},"Company",{"dataNavLevelOne":465},"company",{"type":248,"columns":467},[468],{"items":469},[470,475,481,483,488,493,498,503,508,513],{"text":471,"config":472},"About",{"href":473,"dataGaName":474,"dataGaLocation":197},"/company/","about",{"text":476,"config":477,"footerGa":480},"Jobs",{"href":478,"dataGaName":479,"dataGaLocation":197},"/jobs/","jobs",{"dataGaName":479},{"text":442,"config":482},{"href":444,"dataGaName":445,"dataGaLocation":197},{"text":484,"config":485},"Leadership",{"href":486,"dataGaName":487,"dataGaLocation":197},"/company/team/e-group/","leadership",{"text":489,"config":490},"Handbook",{"href":491,"dataGaName":492,"dataGaLocation":197},"https://handbook.gitlab.com/","handbook",{"text":494,"config":495},"Investor relations",{"href":496,"dataGaName":497,"dataGaLocation":197},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":499,"config":500},"Trust Center",{"href":501,"dataGaName":502,"dataGaLocation":197},"/security/","trust center",{"text":504,"config":505},"AI Transparency Center",{"href":506,"dataGaName":507,"dataGaLocation":197},"/ai-transparency-center/","ai transparency center",{"text":509,"config":510},"Newsletter",{"href":511,"dataGaName":512,"dataGaLocation":197},"/company/contact/#contact-forms","newsletter",{"text":514,"config":515},"Press",{"href":516,"dataGaName":517,"dataGaLocation":197},"/press/","press",{"text":519,"config":520,"menu":521},"Contact us",{"dataNavLevelOne":465},{"type":248,"columns":522},[523],{"items":524},[525,530,535],{"text":526,"config":527},"Talk to sales",{"href":528,"dataGaName":529,"dataGaLocation":197},"/sales/","talk to sales",{"text":531,"config":532},"Support portal",{"href":533,"dataGaName":534,"dataGaLocation":197},"https://support.gitlab.com/hc/en-us","support portal",{"text":536,"config":537},"Customer portal",{"href":538,"dataGaName":539,"dataGaLocation":197},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":541,"login":542,"suggestions":549},"Close",{"text":543,"link":544},"To search repositories and projects, login to",{"text":545,"config":546},"gitlab.com",{"href":211,"dataGaName":547,"dataGaLocation":548},"search login","search",{"text":550,"default":551},"Suggestions",[552,554,558,560,564,568],{"text":228,"config":553},{"href":233,"dataGaName":228,"dataGaLocation":548},{"text":555,"config":556},"Code Suggestions (AI)",{"href":557,"dataGaName":555,"dataGaLocation":548},"/solutions/code-suggestions/",{"text":264,"config":559},{"href":266,"dataGaName":264,"dataGaLocation":548},{"text":561,"config":562},"GitLab on AWS",{"href":563,"dataGaName":561,"dataGaLocation":548},"/partners/technology-partners/aws/",{"text":565,"config":566},"GitLab on Google Cloud",{"href":567,"dataGaName":565,"dataGaLocation":548},"/partners/technology-partners/google-cloud-platform/",{"text":569,"config":570},"Why GitLab?",{"href":241,"dataGaName":569,"dataGaLocation":548},{"freeTrial":572,"mobileIcon":577,"desktopIcon":582,"secondaryButton":585},{"text":573,"config":574},"Start free trial",{"href":575,"dataGaName":202,"dataGaLocation":576},"https://gitlab.com/-/trials/new/","nav",{"altText":578,"config":579},"Gitlab Icon",{"src":580,"dataGaName":581,"dataGaLocation":576},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":578,"config":583},{"src":584,"dataGaName":581,"dataGaLocation":576},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":586,"config":587},"Get Started",{"href":588,"dataGaName":589,"dataGaLocation":576},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":591,"mobileIcon":595,"desktopIcon":597},{"text":592,"config":593},"Learn more about GitLab Duo",{"href":233,"dataGaName":594,"dataGaLocation":576},"gitlab duo",{"altText":578,"config":596},{"src":580,"dataGaName":581,"dataGaLocation":576},{"altText":578,"config":598},{"src":584,"dataGaName":581,"dataGaLocation":576},{"button":600,"mobileIcon":605,"desktopIcon":607},{"text":601,"config":602},"/switch",{"href":603,"dataGaName":604,"dataGaLocation":576},"#contact","switch",{"altText":578,"config":606},{"src":580,"dataGaName":581,"dataGaLocation":576},{"altText":578,"config":608},{"src":609,"dataGaName":581,"dataGaLocation":576},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":611,"mobileIcon":616,"desktopIcon":618},{"text":612,"config":613},"Back to pricing",{"href":346,"dataGaName":614,"dataGaLocation":576,"icon":615},"back to pricing","GoBack",{"altText":578,"config":617},{"src":580,"dataGaName":581,"dataGaLocation":576},{"altText":578,"config":619},{"src":584,"dataGaName":581,"dataGaLocation":576},{"title":621,"titleMobile":622,"button":623,"config":628},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":239,"config":624},{"href":625,"dataGaName":626,"dataGaLocation":627},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":629,"disabled":163},"release",{"data":631},{"text":632,"source":633,"edit":639,"contribute":644,"config":649,"items":654,"minimal":863},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":634,"config":635},"View page source",{"href":636,"dataGaName":637,"dataGaLocation":638},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":640,"config":641},"Edit this page",{"href":642,"dataGaName":643,"dataGaLocation":638},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":645,"config":646},"Please contribute",{"href":647,"dataGaName":648,"dataGaLocation":638},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":650,"facebook":651,"youtube":652,"linkedin":653},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[655,702,755,799,831],{"title":344,"links":656,"subMenu":671},[657,661,666],{"text":658,"config":659},"View plans",{"href":346,"dataGaName":660,"dataGaLocation":638},"view plans",{"text":662,"config":663},"Why Premium?",{"href":664,"dataGaName":665,"dataGaLocation":638},"/pricing/premium/","why premium",{"text":667,"config":668},"Why Ultimate?",{"href":669,"dataGaName":670,"dataGaLocation":638},"/pricing/ultimate/","why ultimate",[672],{"title":673,"links":674},"Contact Us",[675,678,680,682,687,692,697],{"text":676,"config":677},"Contact sales",{"href":528,"dataGaName":207,"dataGaLocation":638},{"text":531,"config":679},{"href":533,"dataGaName":534,"dataGaLocation":638},{"text":536,"config":681},{"href":538,"dataGaName":539,"dataGaLocation":638},{"text":683,"config":684},"Status",{"href":685,"dataGaName":686,"dataGaLocation":638},"https://status.gitlab.com/","status",{"text":688,"config":689},"Terms of use",{"href":690,"dataGaName":691,"dataGaLocation":638},"/terms/","terms of use",{"text":693,"config":694},"Privacy statement",{"href":695,"dataGaName":696,"dataGaLocation":638},"/privacy/","privacy statement",{"text":698,"config":699},"Cookie preferences",{"dataGaName":700,"dataGaLocation":638,"id":701,"isOneTrustButton":177},"cookie preferences","ot-sdk-btn",{"title":244,"links":703,"subMenu":712},[704,708],{"text":705,"config":706},"DevSecOps platform",{"href":226,"dataGaName":707,"dataGaLocation":638},"devsecops platform",{"text":709,"config":710},"AI-Assisted Development",{"href":233,"dataGaName":711,"dataGaLocation":638},"ai-assisted development",[713],{"title":714,"links":715},"Topics",[716,721,726,731,736,741,745,750],{"text":717,"config":718},"CICD",{"href":719,"dataGaName":720,"dataGaLocation":638},"/topics/ci-cd/","cicd",{"text":722,"config":723},"GitOps",{"href":724,"dataGaName":725,"dataGaLocation":638},"/topics/gitops/","gitops",{"text":727,"config":728},"DevOps",{"href":729,"dataGaName":730,"dataGaLocation":638},"/topics/devops/","devops",{"text":732,"config":733},"Version Control",{"href":734,"dataGaName":735,"dataGaLocation":638},"/topics/version-control/","version control",{"text":737,"config":738},"DevSecOps",{"href":739,"dataGaName":740,"dataGaLocation":638},"/topics/devsecops/","devsecops",{"text":742,"config":743},"Cloud Native",{"href":744,"dataGaName":187,"dataGaLocation":638},"/topics/cloud-native/",{"text":746,"config":747},"AI for Coding",{"href":748,"dataGaName":749,"dataGaLocation":638},"/topics/devops/ai-for-coding/","ai for coding",{"text":751,"config":752},"Agentic AI",{"href":753,"dataGaName":754,"dataGaLocation":638},"/topics/agentic-ai/","agentic ai",{"title":756,"links":757},"Solutions",[758,760,762,767,771,774,778,781,783,786,789,794],{"text":288,"config":759},{"href":283,"dataGaName":288,"dataGaLocation":638},{"text":277,"config":761},{"href":260,"dataGaName":261,"dataGaLocation":638},{"text":763,"config":764},"Agile development",{"href":765,"dataGaName":766,"dataGaLocation":638},"/solutions/agile-delivery/","agile delivery",{"text":768,"config":769},"SCM",{"href":273,"dataGaName":770,"dataGaLocation":638},"source code management",{"text":717,"config":772},{"href":266,"dataGaName":773,"dataGaLocation":638},"continuous integration & delivery",{"text":775,"config":776},"Value stream management",{"href":316,"dataGaName":777,"dataGaLocation":638},"value stream management",{"text":722,"config":779},{"href":780,"dataGaName":725,"dataGaLocation":638},"/solutions/gitops/",{"text":326,"config":782},{"href":329,"dataGaName":330,"dataGaLocation":638},{"text":784,"config":785},"Small business",{"href":335,"dataGaName":336,"dataGaLocation":638},{"text":787,"config":788},"Public sector",{"href":341,"dataGaName":342,"dataGaLocation":638},{"text":790,"config":791},"Education",{"href":792,"dataGaName":793,"dataGaLocation":638},"/solutions/education/","education",{"text":795,"config":796},"Financial services",{"href":797,"dataGaName":798,"dataGaLocation":638},"/solutions/finance/","financial services",{"title":349,"links":800},[801,803,805,807,810,812,815,817,819,821,823,825,827,829],{"text":362,"config":802},{"href":364,"dataGaName":365,"dataGaLocation":638},{"text":367,"config":804},{"href":369,"dataGaName":370,"dataGaLocation":638},{"text":372,"config":806},{"href":374,"dataGaName":375,"dataGaLocation":638},{"text":377,"config":808},{"href":379,"dataGaName":809,"dataGaLocation":638},"docs",{"text":400,"config":811},{"href":402,"dataGaName":403,"dataGaLocation":638},{"text":813,"config":814},"What's new",{"href":460,"dataGaName":461,"dataGaLocation":638},{"text":395,"config":816},{"href":397,"dataGaName":398,"dataGaLocation":638},{"text":414,"config":818},{"href":416,"dataGaName":417,"dataGaLocation":638},{"text":422,"config":820},{"href":424,"dataGaName":425,"dataGaLocation":638},{"text":427,"config":822},{"href":429,"dataGaName":430,"dataGaLocation":638},{"text":432,"config":824},{"href":434,"dataGaName":435,"dataGaLocation":638},{"text":437,"config":826},{"href":439,"dataGaName":440,"dataGaLocation":638},{"text":442,"config":828},{"href":444,"dataGaName":445,"dataGaLocation":638},{"text":447,"config":830},{"href":449,"dataGaName":450,"dataGaLocation":638},{"title":463,"links":832},[833,835,837,839,841,843,847,852,854,856,858],{"text":471,"config":834},{"href":473,"dataGaName":465,"dataGaLocation":638},{"text":476,"config":836},{"href":478,"dataGaName":479,"dataGaLocation":638},{"text":484,"config":838},{"href":486,"dataGaName":487,"dataGaLocation":638},{"text":489,"config":840},{"href":491,"dataGaName":492,"dataGaLocation":638},{"text":494,"config":842},{"href":496,"dataGaName":497,"dataGaLocation":638},{"text":844,"config":845},"Sustainability",{"href":846,"dataGaName":844,"dataGaLocation":638},"/sustainability/",{"text":848,"config":849},"Diversity, inclusion and belonging (DIB)",{"href":850,"dataGaName":851,"dataGaLocation":638},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":499,"config":853},{"href":501,"dataGaName":502,"dataGaLocation":638},{"text":509,"config":855},{"href":511,"dataGaName":512,"dataGaLocation":638},{"text":514,"config":857},{"href":516,"dataGaName":517,"dataGaLocation":638},{"text":859,"config":860},"Modern Slavery Transparency Statement",{"href":861,"dataGaName":862,"dataGaLocation":638},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":864},[865,868,871],{"text":866,"config":867},"Terms",{"href":690,"dataGaName":691,"dataGaLocation":638},{"text":869,"config":870},"Cookies",{"dataGaName":700,"dataGaLocation":638,"id":701,"isOneTrustButton":177},{"text":872,"config":873},"Privacy",{"href":695,"dataGaName":696,"dataGaLocation":638},[875],{"id":876,"title":7,"body":162,"config":877,"content":879,"description":162,"extension":883,"meta":884,"navigation":177,"path":885,"seo":886,"stem":887,"__hash__":888},"blogAuthors/en-us/blog/authors/kwan-lee.yml",{"template":878},"BlogAuthor",{"name":7,"config":880},{"headshot":881,"ctfId":882},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","Kwan-Lee","yml",{},"/en-us/blog/authors/kwan-lee",{},"en-us/blog/authors/kwan-lee","dcZQy9Ku8QDp8_wBczbUcD72-ZUOEm0KfmXr1WpgU3o",[890,898,906],{"title":891,"description":892,"heroImage":893,"category":158,"date":894,"authors":895,"slug":897,"externalUrl":162},"Developer Relations at GitLab: What we've learned since our start","DevRel is key to success for many tech companies. Find out how GitLab's DevRel program has evolved to stay aligned with the industry and our customers.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672008/Blog/Hero%20Images/AdobeStock_204527293.jpg","2024-03-13",[896],"John Coghlan","developer-relations-at-gitlab-what-weve-learned-since-our-start",{"title":899,"description":900,"heroImage":901,"category":158,"date":902,"authors":903,"slug":905,"externalUrl":162},"Visualizing 11 years of GitLab contributions","Check out this animated video, which beautifully visualizes every contribution since our start.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682555/Blog/Hero%20Images/gitlabeveryonecontributesdna.png","2022-12-19",[904],"Darwin Sanoy","everyone-who-has-contributed",{"title":907,"description":908,"heroImage":909,"category":158,"date":910,"authors":911,"slug":913,"externalUrl":162},"The many routes to a tech career","GitLab team members of different ages and backgrounds share their entry into this industry.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667236/Blog/Hero%20Images/Learn-at-GL.jpg","2022-10-04",[912],"Heather Simpson","the-many-routes-to-a-tech-career",{"promotions":915},[916,930,942,954],{"id":917,"categories":918,"header":920,"text":921,"button":922,"image":927},"ai-modernization",[919],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":923,"config":924},"Get your AI maturity score",{"href":925,"dataGaName":926,"dataGaLocation":403},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":928},{"src":929},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":931,"categories":932,"header":934,"text":921,"button":935,"image":939},"devops-modernization",[933,740],"product","Are you just managing tools or shipping innovation?",{"text":936,"config":937},"Get your DevOps maturity score",{"href":938,"dataGaName":926,"dataGaLocation":403},"/assessments/devops-modernization-assessment/",{"config":940},{"src":941},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":943,"categories":944,"header":946,"text":921,"button":947,"image":951},"security-modernization",[945],"security","Are you trading speed for security?",{"text":948,"config":949},"Get your security maturity score",{"href":950,"dataGaName":926,"dataGaLocation":403},"/assessments/security-modernization-assessment/",{"config":952},{"src":953},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":955,"paths":956,"header":959,"text":960,"button":961,"image":966},"github-azure-migration",[957,958],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":962,"config":963},"See how GitLab compares to GitHub",{"href":964,"dataGaName":965,"dataGaLocation":403},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":967},{"src":941},{"header":969,"blurb":970,"button":971,"secondaryButton":976},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":972,"config":973},"Get your free trial",{"href":974,"dataGaName":202,"dataGaLocation":975},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":676,"config":977},{"href":528,"dataGaName":207,"dataGaLocation":975},1786803753839]