[{"data":1,"prerenderedAt":1037},["ShallowReactive",2],{"/en-us/blog/authors/sara-kassabian":3,"navigation-en-us":20,"banner-en-us":420,"footer-en-us":430,"blog-author-posts-en-us-sara-kassabian":672},{"id":4,"title":5,"body":6,"config":7,"content":9,"description":6,"extension":13,"meta":14,"navigation":15,"path":16,"seo":17,"stem":18,"__hash__":19},"blogAuthors/en-us/blog/authors/sara-kassabian.yml","Sara Kassabian",null,{"template":8},"BlogAuthor",{"name":5,"config":10},{"headshot":11,"ctfId":12},"","skassabian","yml",{},true,"/en-us/blog/authors/sara-kassabian",{},"en-us/blog/authors/sara-kassabian","6cCCPpjzkCDfb77tMVCyG8_FImRVQXA2VCMyiAjhFX0",{"data":21},{"logo":22,"freeTrial":27,"sales":32,"login":37,"items":42,"search":350,"minimal":381,"duo":400,"pricingDeployment":410},{"config":23},{"href":24,"dataGaName":25,"dataGaLocation":26},"/","gitlab logo","header",{"text":28,"config":29},"Get free trial",{"href":30,"dataGaName":31,"dataGaLocation":26},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":33,"config":34},"Talk to sales",{"href":35,"dataGaName":36,"dataGaLocation":26},"/sales/","sales",{"text":38,"config":39},"Sign in",{"href":40,"dataGaName":41,"dataGaLocation":26},"https://gitlab.com/users/sign_in/","sign in",[43,70,165,170,271,331],{"text":44,"config":45,"cards":47},"Platform",{"dataNavLevelOne":46},"platform",[48,54,62],{"title":44,"description":49,"link":50},"The intelligent orchestration platform for DevSecOps",{"text":51,"config":52},"Explore our Platform",{"href":53,"dataGaName":46,"dataGaLocation":26},"/platform/",{"title":55,"description":56,"link":57},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":58,"config":59},"Meet GitLab Duo",{"href":60,"dataGaName":61,"dataGaLocation":26},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":63,"description":64,"link":65},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":66,"config":67},"Learn more",{"href":68,"dataGaName":69,"dataGaLocation":26},"/why-gitlab/","why gitlab",{"text":71,"left":15,"config":72,"link":74,"lists":78,"footer":147},"Product",{"dataNavLevelOne":73},"solutions",{"text":75,"config":76},"View all Solutions",{"href":77,"dataGaName":73,"dataGaLocation":26},"/solutions/",[79,103,126],{"title":80,"description":81,"link":82,"items":87},"Automation","CI/CD and automation to accelerate deployment",{"config":83},{"icon":84,"href":85,"dataGaName":86,"dataGaLocation":26},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[88,92,95,99],{"text":89,"config":90},"CI/CD",{"href":91,"dataGaLocation":26,"dataGaName":89},"/solutions/continuous-integration/",{"text":55,"config":93},{"href":60,"dataGaLocation":26,"dataGaName":94},"gitlab duo agent platform - product menu",{"text":96,"config":97},"Source Code Management",{"href":98,"dataGaLocation":26,"dataGaName":96},"/solutions/source-code-management/",{"text":100,"config":101},"Automated Software Delivery",{"href":85,"dataGaLocation":26,"dataGaName":102},"Automated software delivery",{"title":104,"description":105,"link":106,"items":111},"Security","Deliver code faster without compromising security",{"config":107},{"href":108,"dataGaName":109,"dataGaLocation":26,"icon":110},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[112,116,121],{"text":113,"config":114},"Application Security Testing",{"href":108,"dataGaName":115,"dataGaLocation":26},"Application security testing",{"text":117,"config":118},"Software Supply Chain Security",{"href":119,"dataGaLocation":26,"dataGaName":120},"/solutions/supply-chain/","Software supply chain security",{"text":122,"config":123},"Software Compliance",{"href":124,"dataGaName":125,"dataGaLocation":26},"/solutions/software-compliance/","software compliance",{"title":127,"link":128,"items":133},"Measurement",{"config":129},{"icon":130,"href":131,"dataGaName":132,"dataGaLocation":26},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[134,138,142],{"text":135,"config":136},"Visibility & Measurement",{"href":131,"dataGaLocation":26,"dataGaName":137},"Visibility and Measurement",{"text":139,"config":140},"Value Stream Management",{"href":141,"dataGaLocation":26,"dataGaName":139},"/solutions/value-stream-management/",{"text":143,"config":144},"Analytics & Insights",{"href":145,"dataGaLocation":26,"dataGaName":146},"/solutions/analytics-and-insights/","Analytics and insights",{"title":148,"items":149},"GitLab for",[150,155,160],{"text":151,"config":152},"Enterprise",{"href":153,"dataGaLocation":26,"dataGaName":154},"/enterprise/","enterprise",{"text":156,"config":157},"Small Business",{"href":158,"dataGaLocation":26,"dataGaName":159},"/small-business/","small business",{"text":161,"config":162},"Public Sector",{"href":163,"dataGaLocation":26,"dataGaName":164},"/solutions/public-sector/","public sector",{"text":166,"config":167},"Pricing",{"href":168,"dataGaName":169,"dataGaLocation":26,"dataNavLevelOne":169},"/pricing/","pricing",{"text":171,"config":172,"link":174,"lists":178,"feature":258},"Resources",{"dataNavLevelOne":173},"resources",{"text":175,"config":176},"View all resources",{"href":177,"dataGaName":173,"dataGaLocation":26},"/resources/",[179,212,230],{"title":180,"items":181},"Getting started",[182,187,192,197,202,207],{"text":183,"config":184},"Install",{"href":185,"dataGaName":186,"dataGaLocation":26},"/install/","install",{"text":188,"config":189},"Quick start guides",{"href":190,"dataGaName":191,"dataGaLocation":26},"/get-started/","quick setup checklists",{"text":193,"config":194},"Learn",{"href":195,"dataGaLocation":26,"dataGaName":196},"https://university.gitlab.com/","learn",{"text":198,"config":199},"Product documentation",{"href":200,"dataGaName":201,"dataGaLocation":26},"https://docs.gitlab.com/","product documentation",{"text":203,"config":204},"Best practice videos",{"href":205,"dataGaName":206,"dataGaLocation":26},"/getting-started-videos/","best practice videos",{"text":208,"config":209},"Integrations",{"href":210,"dataGaName":211,"dataGaLocation":26},"/integrations/","integrations",{"title":213,"items":214},"Discover",[215,220,225],{"text":216,"config":217},"Customer success stories",{"href":218,"dataGaName":219,"dataGaLocation":26},"/customers/","customer success stories",{"text":221,"config":222},"Blog",{"href":223,"dataGaName":224,"dataGaLocation":26},"/blog/","blog",{"text":226,"config":227},"Remote",{"href":228,"dataGaName":229,"dataGaLocation":26},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":231,"items":232},"Connect",[233,238,243,248,253],{"text":234,"config":235},"GitLab Services",{"href":236,"dataGaName":237,"dataGaLocation":26},"/services/","services",{"text":239,"config":240},"Community",{"href":241,"dataGaName":242,"dataGaLocation":26},"/community/","community",{"text":244,"config":245},"Forum",{"href":246,"dataGaName":247,"dataGaLocation":26},"https://forum.gitlab.com/","forum",{"text":249,"config":250},"Events",{"href":251,"dataGaName":252,"dataGaLocation":26},"/events/","events",{"text":254,"config":255},"Partners",{"href":256,"dataGaName":257,"dataGaLocation":26},"/partners/","partners",{"backgroundColor":259,"textColor":260,"text":261,"image":262,"link":266},"#2f2a6b","#fff","Insights for the future of software development",{"altText":263,"config":264},"the source promo card",{"src":265},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":267,"config":268},"Read the latest",{"href":269,"dataGaName":270,"dataGaLocation":26},"/the-source/","the source",{"text":272,"config":273,"lists":275},"Company",{"dataNavLevelOne":274},"company",[276],{"items":277},[278,283,289,291,296,301,306,311,316,321,326],{"text":279,"config":280},"About",{"href":281,"dataGaName":282,"dataGaLocation":26},"/company/","about",{"text":284,"config":285,"footerGa":288},"Jobs",{"href":286,"dataGaName":287,"dataGaLocation":26},"/jobs/","jobs",{"dataGaName":287},{"text":249,"config":290},{"href":251,"dataGaName":252,"dataGaLocation":26},{"text":292,"config":293},"Leadership",{"href":294,"dataGaName":295,"dataGaLocation":26},"/company/team/e-group/","leadership",{"text":297,"config":298},"Team",{"href":299,"dataGaName":300,"dataGaLocation":26},"/company/team/","team",{"text":302,"config":303},"Handbook",{"href":304,"dataGaName":305,"dataGaLocation":26},"https://handbook.gitlab.com/","handbook",{"text":307,"config":308},"Investor relations",{"href":309,"dataGaName":310,"dataGaLocation":26},"https://ir.gitlab.com/","investor relations",{"text":312,"config":313},"Trust Center",{"href":314,"dataGaName":315,"dataGaLocation":26},"/security/","trust center",{"text":317,"config":318},"AI Transparency Center",{"href":319,"dataGaName":320,"dataGaLocation":26},"/ai-transparency-center/","ai transparency center",{"text":322,"config":323},"Newsletter",{"href":324,"dataGaName":325,"dataGaLocation":26},"/company/contact/#contact-forms","newsletter",{"text":327,"config":328},"Press",{"href":329,"dataGaName":330,"dataGaLocation":26},"/press/","press",{"text":332,"config":333,"lists":334},"Contact us",{"dataNavLevelOne":274},[335],{"items":336},[337,340,345],{"text":33,"config":338},{"href":35,"dataGaName":339,"dataGaLocation":26},"talk to sales",{"text":341,"config":342},"Support portal",{"href":343,"dataGaName":344,"dataGaLocation":26},"https://support.gitlab.com","support portal",{"text":346,"config":347},"Customer portal",{"href":348,"dataGaName":349,"dataGaLocation":26},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":351,"login":352,"suggestions":359},"Close",{"text":353,"link":354},"To search repositories and projects, login to",{"text":355,"config":356},"gitlab.com",{"href":40,"dataGaName":357,"dataGaLocation":358},"search login","search",{"text":360,"default":361},"Suggestions",[362,364,368,370,374,378],{"text":55,"config":363},{"href":60,"dataGaName":55,"dataGaLocation":358},{"text":365,"config":366},"Code Suggestions (AI)",{"href":367,"dataGaName":365,"dataGaLocation":358},"/solutions/code-suggestions/",{"text":89,"config":369},{"href":91,"dataGaName":89,"dataGaLocation":358},{"text":371,"config":372},"GitLab on AWS",{"href":373,"dataGaName":371,"dataGaLocation":358},"/partners/technology-partners/aws/",{"text":375,"config":376},"GitLab on Google Cloud",{"href":377,"dataGaName":375,"dataGaLocation":358},"/partners/technology-partners/google-cloud-platform/",{"text":379,"config":380},"Why GitLab?",{"href":68,"dataGaName":379,"dataGaLocation":358},{"freeTrial":382,"mobileIcon":387,"desktopIcon":392,"secondaryButton":395},{"text":383,"config":384},"Start free trial",{"href":385,"dataGaName":31,"dataGaLocation":386},"https://gitlab.com/-/trials/new/","nav",{"altText":388,"config":389},"Gitlab Icon",{"src":390,"dataGaName":391,"dataGaLocation":386},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":388,"config":393},{"src":394,"dataGaName":391,"dataGaLocation":386},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":396,"config":397},"Get Started",{"href":398,"dataGaName":399,"dataGaLocation":386},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/compare/gitlab-vs-github/","get started",{"freeTrial":401,"mobileIcon":406,"desktopIcon":408},{"text":402,"config":403},"Learn more about GitLab Duo",{"href":404,"dataGaName":405,"dataGaLocation":386},"/gitlab-duo/","gitlab duo",{"altText":388,"config":407},{"src":390,"dataGaName":391,"dataGaLocation":386},{"altText":388,"config":409},{"src":394,"dataGaName":391,"dataGaLocation":386},{"freeTrial":411,"mobileIcon":416,"desktopIcon":418},{"text":412,"config":413},"Back to pricing",{"href":168,"dataGaName":414,"dataGaLocation":386,"icon":415},"back to pricing","GoBack",{"altText":388,"config":417},{"src":390,"dataGaName":391,"dataGaLocation":386},{"altText":388,"config":419},{"src":394,"dataGaName":391,"dataGaLocation":386},{"title":421,"button":422,"config":427},"See how agentic AI transforms software delivery",{"text":423,"config":424},"Watch GitLab Transcend now",{"href":425,"dataGaName":426,"dataGaLocation":26},"/events/transcend/virtual/","transcend event",{"layout":428,"icon":429},"release","AiStar",{"data":431},{"text":432,"source":433,"edit":439,"contribute":444,"config":449,"items":454,"minimal":661},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":434,"config":435},"View page source",{"href":436,"dataGaName":437,"dataGaLocation":438},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":440,"config":441},"Edit this page",{"href":442,"dataGaName":443,"dataGaLocation":438},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":445,"config":446},"Please contribute",{"href":447,"dataGaName":448,"dataGaLocation":438},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":450,"facebook":451,"youtube":452,"linkedin":453},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[455,502,556,600,627],{"title":166,"links":456,"subMenu":471},[457,461,466],{"text":458,"config":459},"View plans",{"href":168,"dataGaName":460,"dataGaLocation":438},"view plans",{"text":462,"config":463},"Why Premium?",{"href":464,"dataGaName":465,"dataGaLocation":438},"/pricing/premium/","why premium",{"text":467,"config":468},"Why Ultimate?",{"href":469,"dataGaName":470,"dataGaLocation":438},"/pricing/ultimate/","why ultimate",[472],{"title":473,"links":474},"Contact Us",[475,478,480,482,487,492,497],{"text":476,"config":477},"Contact sales",{"href":35,"dataGaName":36,"dataGaLocation":438},{"text":341,"config":479},{"href":343,"dataGaName":344,"dataGaLocation":438},{"text":346,"config":481},{"href":348,"dataGaName":349,"dataGaLocation":438},{"text":483,"config":484},"Status",{"href":485,"dataGaName":486,"dataGaLocation":438},"https://status.gitlab.com/","status",{"text":488,"config":489},"Terms of use",{"href":490,"dataGaName":491,"dataGaLocation":438},"/terms/","terms of use",{"text":493,"config":494},"Privacy statement",{"href":495,"dataGaName":496,"dataGaLocation":438},"/privacy/","privacy statement",{"text":498,"config":499},"Cookie preferences",{"dataGaName":500,"dataGaLocation":438,"id":501,"isOneTrustButton":15},"cookie preferences","ot-sdk-btn",{"title":71,"links":503,"subMenu":512},[504,508],{"text":505,"config":506},"DevSecOps platform",{"href":53,"dataGaName":507,"dataGaLocation":438},"devsecops platform",{"text":509,"config":510},"AI-Assisted Development",{"href":404,"dataGaName":511,"dataGaLocation":438},"ai-assisted development",[513],{"title":514,"links":515},"Topics",[516,521,526,531,536,541,546,551],{"text":517,"config":518},"CICD",{"href":519,"dataGaName":520,"dataGaLocation":438},"/topics/ci-cd/","cicd",{"text":522,"config":523},"GitOps",{"href":524,"dataGaName":525,"dataGaLocation":438},"/topics/gitops/","gitops",{"text":527,"config":528},"DevOps",{"href":529,"dataGaName":530,"dataGaLocation":438},"/topics/devops/","devops",{"text":532,"config":533},"Version Control",{"href":534,"dataGaName":535,"dataGaLocation":438},"/topics/version-control/","version control",{"text":537,"config":538},"DevSecOps",{"href":539,"dataGaName":540,"dataGaLocation":438},"/topics/devsecops/","devsecops",{"text":542,"config":543},"Cloud Native",{"href":544,"dataGaName":545,"dataGaLocation":438},"/topics/cloud-native/","cloud native",{"text":547,"config":548},"AI for Coding",{"href":549,"dataGaName":550,"dataGaLocation":438},"/topics/devops/ai-for-coding/","ai for coding",{"text":552,"config":553},"Agentic AI",{"href":554,"dataGaName":555,"dataGaLocation":438},"/topics/agentic-ai/","agentic ai",{"title":557,"links":558},"Solutions",[559,561,563,568,572,575,579,582,584,587,590,595],{"text":113,"config":560},{"href":108,"dataGaName":113,"dataGaLocation":438},{"text":102,"config":562},{"href":85,"dataGaName":86,"dataGaLocation":438},{"text":564,"config":565},"Agile development",{"href":566,"dataGaName":567,"dataGaLocation":438},"/solutions/agile-delivery/","agile delivery",{"text":569,"config":570},"SCM",{"href":98,"dataGaName":571,"dataGaLocation":438},"source code management",{"text":517,"config":573},{"href":91,"dataGaName":574,"dataGaLocation":438},"continuous integration & delivery",{"text":576,"config":577},"Value stream management",{"href":141,"dataGaName":578,"dataGaLocation":438},"value stream management",{"text":522,"config":580},{"href":581,"dataGaName":525,"dataGaLocation":438},"/solutions/gitops/",{"text":151,"config":583},{"href":153,"dataGaName":154,"dataGaLocation":438},{"text":585,"config":586},"Small business",{"href":158,"dataGaName":159,"dataGaLocation":438},{"text":588,"config":589},"Public sector",{"href":163,"dataGaName":164,"dataGaLocation":438},{"text":591,"config":592},"Education",{"href":593,"dataGaName":594,"dataGaLocation":438},"/solutions/education/","education",{"text":596,"config":597},"Financial services",{"href":598,"dataGaName":599,"dataGaLocation":438},"/solutions/finance/","financial services",{"title":171,"links":601},[602,604,606,608,611,613,615,617,619,621,623,625],{"text":183,"config":603},{"href":185,"dataGaName":186,"dataGaLocation":438},{"text":188,"config":605},{"href":190,"dataGaName":191,"dataGaLocation":438},{"text":193,"config":607},{"href":195,"dataGaName":196,"dataGaLocation":438},{"text":198,"config":609},{"href":200,"dataGaName":610,"dataGaLocation":438},"docs",{"text":221,"config":612},{"href":223,"dataGaName":224,"dataGaLocation":438},{"text":216,"config":614},{"href":218,"dataGaName":219,"dataGaLocation":438},{"text":226,"config":616},{"href":228,"dataGaName":229,"dataGaLocation":438},{"text":234,"config":618},{"href":236,"dataGaName":237,"dataGaLocation":438},{"text":239,"config":620},{"href":241,"dataGaName":242,"dataGaLocation":438},{"text":244,"config":622},{"href":246,"dataGaName":247,"dataGaLocation":438},{"text":249,"config":624},{"href":251,"dataGaName":252,"dataGaLocation":438},{"text":254,"config":626},{"href":256,"dataGaName":257,"dataGaLocation":438},{"title":272,"links":628},[629,631,633,635,637,639,641,645,650,652,654,656],{"text":279,"config":630},{"href":281,"dataGaName":274,"dataGaLocation":438},{"text":284,"config":632},{"href":286,"dataGaName":287,"dataGaLocation":438},{"text":292,"config":634},{"href":294,"dataGaName":295,"dataGaLocation":438},{"text":297,"config":636},{"href":299,"dataGaName":300,"dataGaLocation":438},{"text":302,"config":638},{"href":304,"dataGaName":305,"dataGaLocation":438},{"text":307,"config":640},{"href":309,"dataGaName":310,"dataGaLocation":438},{"text":642,"config":643},"Sustainability",{"href":644,"dataGaName":642,"dataGaLocation":438},"/sustainability/",{"text":646,"config":647},"Diversity, inclusion and belonging (DIB)",{"href":648,"dataGaName":649,"dataGaLocation":438},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":312,"config":651},{"href":314,"dataGaName":315,"dataGaLocation":438},{"text":322,"config":653},{"href":324,"dataGaName":325,"dataGaLocation":438},{"text":327,"config":655},{"href":329,"dataGaName":330,"dataGaLocation":438},{"text":657,"config":658},"Modern Slavery Transparency Statement",{"href":659,"dataGaName":660,"dataGaLocation":438},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":662},[663,666,669],{"text":664,"config":665},"Terms",{"href":490,"dataGaName":491,"dataGaLocation":438},{"text":667,"config":668},"Cookies",{"dataGaName":500,"dataGaLocation":438,"id":501,"isOneTrustButton":15},{"text":670,"config":671},"Privacy",{"href":495,"dataGaName":496,"dataGaLocation":438},[673,682,692,701,711,720,729,738,747,756,766,775,784,793,802,811,821,830,838,847,856,864,873,881,890,899,908,917,926,935,944,953,962,971,980,990,999,1008,1018,1027],{"content":674,"config":680},{"title":675,"heroImage":676,"category":540,"description":677,"authors":678,"date":679},"It's time to build more accessible software. A DevOps platform can help","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667281/Blog/Hero%20Images/accessibility.jpg","Shifting accessibility left can make building accessible products simpler and more efficient. A DevOps platform makes it easier to customize and adjust priorities to suit your business needs.",[5],"2021-09-21",{"slug":681,"externalUrl":-1},"how-the-devops-platform-makes-building-accessible-software-easier",{"content":683,"config":690},{"title":684,"heroImage":685,"category":686,"description":687,"authors":688,"date":689},"How UBS created their own DevOps platform using GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665839/Blog/Hero%20Images/devops.png","engineering","How GitLab helped power more than a million builds in six months on UBS DevCloud.",[5],"2021-08-04",{"slug":691,"externalUrl":-1},"ubs-gitlab-devops-platform",{"content":693,"config":699},{"title":694,"heroImage":676,"category":695,"description":696,"authors":697,"date":698},"How the open source development community can build more accessible software","open-source","The open source software community is built on the idea that everyone can contribute, and that includes people living with disabilities. GitLab team members share their ideas for building more accessible, open source software.",[5],"2021-04-07",{"slug":700,"externalUrl":-1},"how-the-open-source-community-can-build-more-accessible-products",{"content":702,"config":709},{"title":703,"heroImage":704,"category":705,"description":706,"authors":707,"date":708},"5 Ways to level up your remote engineering skills","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749677856/Blog/Hero%20Images/collaboration.png","culture","A round-up of our blog posts unpacking the top tips for working remotely as an engineer.",[5],"2021-03-12",{"slug":710,"externalUrl":-1},"best-practices-remote-engineering",{"content":712,"config":718},{"title":713,"heroImage":714,"category":705,"description":715,"authors":716,"date":717},"How async and all-remote make Agile simpler","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681930/Blog/Hero%20Images/runlanes.jpg","Engineers at GitLab and IssueTrak share their tips on adopting Agile while working remotely.",[5],"2021-03-02",{"slug":719,"externalUrl":-1},"agile-for-remote-work",{"content":721,"config":727},{"title":722,"heroImage":723,"category":686,"description":724,"authors":725,"date":726},"How to carry out remote work team collaboration","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681893/Blog/Hero%20Images/remoteengineering.jpg","Some tips for successful asynchronous collaboration from all-remote engineering teams.",[5],"2021-02-09",{"slug":728,"externalUrl":-1},"engineering-teams-collaborating-remotely",{"content":730,"config":736},{"title":731,"heroImage":732,"category":705,"description":733,"authors":734,"date":735},"Tips for managing remote working engineering teams","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679453/Blog/Hero%20Images/remote-work.png","Newly remote engineering managers – how's it going? We offer some tips from our team members who manage remotely.",[5],"2021-01-29",{"slug":737,"externalUrl":-1},"tips-for-managing-engineering-teams-remotely",{"content":739,"config":745},{"title":740,"heroImage":741,"category":686,"description":742,"authors":743,"date":744},"These are your favorite GitLab engineering stories","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681835/Blog/Hero%20Images/stairs_iteration.jpg","From building a Web IDE, to our migration to GCP, to tracking down a bug in NFS – these are some of our most popular engineering blog posts.",[5],"2021-01-07",{"slug":746,"externalUrl":-1},"top-engineering-stories-gitlab",{"content":748,"config":754},{"title":749,"heroImage":750,"category":686,"description":751,"authors":752,"date":753},"How to use GitLab for Agile, CI/CD, GitOps, and more","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681825/Blog/Hero%20Images/triangle_geo.jpg","Read our example engineering stories from the past two years that show how to use GitLab for you DevOps cycle, including GitOps, CI/CD and more.",[5],"2020-12-17",{"slug":755,"externalUrl":-1},"gitlab-for-cicd-agile-gitops-cloudnative",{"content":757,"config":764},{"title":758,"heroImage":759,"category":760,"description":761,"authors":762,"date":763},"Improving DevOps and software development with communication and collaboration","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681779/Blog/Hero%20Images/chatbubble.jpg","insights","The most important skills for a DevOps pro? Collaboration and communication. We share some of our best blogs, articles, and videos to help you work better, together.",[5],"2020-11-23",{"slug":765,"externalUrl":-1},"collaboration-communication-best-practices",{"content":767,"config":773},{"title":768,"heroImage":769,"category":760,"description":770,"authors":771,"date":772},"How to use DevOps to pay off your technical debt","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681643/Blog/Hero%20Images/greenery.jpg","Technical debt is a universal problem with an equally universal solution – DevOps. Here's how DevOps can reduce the tech debt burden and help you deploy faster and more frequently.",[5],"2020-10-05",{"slug":774,"externalUrl":-1},"tech-debt",{"content":776,"config":782},{"title":777,"heroImage":778,"category":760,"description":779,"authors":780,"date":781},"Need DevOps buy-in? Here's how to convince stakeholders","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681597/Blog/Hero%20Images/speedphoto.jpg","If you need to make the case for DevOps to a non-technical crowd, it's important to be prepared. Here's what you need to know.",[5],"2020-09-24",{"slug":783,"externalUrl":-1},"devops-stakeholder-buyin",{"content":785,"config":791},{"title":786,"heroImage":787,"category":705,"description":788,"authors":789,"date":790},"How to tackle impostor syndrome while working remotely","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681541/Blog/Hero%20Images/done_perfect.jpg","Isolation can cause impostor syndrome to flourish. We explain how adopting a growth mindset can help stop impostor syndrome in its tracks.",[5],"2020-09-02",{"slug":792,"externalUrl":-1},"imposter-syndrome-and-remote-work",{"content":794,"config":800},{"title":795,"heroImage":796,"category":686,"description":797,"authors":798,"date":799},"Best practices to keep your Kubernetes runners moving","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681341/Blog/Hero%20Images/trackandfield.jpg","In a presentation at GitLab Commit San Francisco, a senior software engineer from F5 Networks shares some best practices for working with Kubernetes runners.",[5],"2020-05-27",{"slug":801,"externalUrl":-1},"best-practices-for-kubernetes-runners",{"content":803,"config":809},{"title":804,"heroImage":805,"category":686,"description":806,"authors":807,"date":808},"Inside GitLab: How we release software patches","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672273/Blog/Hero%20Images/patch.jpg","At GitLab, we tackle software patches in two ways – hands on and automatically. Learn how the release manager works to create and deliver essential fixes with auto-deploy releases on GitLab.com and patch releases for self-managed users.",[5],"2020-05-13",{"slug":810,"externalUrl":-1},"how-we-release-software-patches",{"content":812,"config":819},{"title":813,"heroImage":814,"category":815,"description":816,"authors":817,"date":818},"Why AppsFlyer moved from Bitbucket to GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681252/Blog/Hero%20Images/gitlab-appsflyer.png","news","AppsFlyer migrated from Mercurial to Git so the company could move to GitLab's open source, self-managed solution.",[5],"2020-04-27",{"slug":820,"externalUrl":-1},"appsflyer-moves-to-gitlab",{"content":822,"config":828},{"title":823,"heroImage":824,"category":686,"description":825,"authors":826,"date":827},"The trouble with technical interviews? They aren't like the job you're interviewing for","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681148/Blog/Hero%20Images/nycbrooklyn.jpg","Forget the coding exercise. Here's how to create realistic scenarios for engineering candidates in technical interviews.",[5],"2020-03-19",{"slug":829,"externalUrl":-1},"the-trouble-with-technical-interviews",{"content":831,"config":837},{"title":832,"heroImage":833,"category":686,"description":834,"authors":835,"date":836},"We're dogfooding a tool to help visualize high-level trends in GitLab projects","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681053/Blog/Hero%20Images/birdseyeview.jpg","How our easy to configure Insights technology takes data from issues and merge requests to build visually appealing charts.",[5],"2020-01-30",{"slug":760,"externalUrl":-1},{"content":839,"config":845},{"title":840,"heroImage":841,"category":686,"description":842,"authors":843,"date":844},"Why we scoped down to build up error tracking ","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665440/Blog/Hero%20Images/automate-ce-ee-merges.jpg","We dig into how shipping small iterations is accelerating delivery on our error tracking product.",[5],"2020-01-23",{"slug":846,"externalUrl":-1},"iteration-on-error-tracking",{"content":848,"config":854},{"title":849,"heroImage":850,"category":815,"description":851,"authors":852,"date":853},"Highlights from 2019","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665651/Blog/Hero%20Images/gitlab-holiday-2019-blog-cover.png","2019 was a big year for GitLab! We look back on our achievements and growth from the past year.",[5],"2020-01-09",{"slug":855,"externalUrl":-1},"2019-year-in-review",{"content":857,"config":862},{"title":858,"heroImage":850,"category":695,"description":859,"authors":860,"date":861},"We're moving our observability suite to Core","Our gift to you for 2020: Metrics, logging, and tracing and alerting are coming soon to Core!",[5],"2019-12-16",{"slug":863,"externalUrl":-1},"observability",{"content":865,"config":871},{"title":866,"heroImage":867,"category":686,"description":868,"authors":869,"date":870},"2 Examples of how marketing uses GitLab to manage complex projects","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680908/Blog/Hero%20Images/stickynotes.jpg","How GitLab technology powers integrated marketing campaigns and product marketing projects.",[5],"2019-12-11",{"slug":872,"externalUrl":-1},"gl-for-pm-prt-2",{"content":874,"config":879},{"title":875,"heroImage":867,"category":686,"description":876,"authors":877,"date":878},"How our tool fosters collaborative project management","Our marketing team explains how we use GitLab to manage complex projects. Read how GitLab can improve your collaboration on projects.",[5],"2019-12-06",{"slug":880,"externalUrl":-1},"gitlab-for-project-management-one",{"content":882,"config":888},{"title":883,"heroImage":884,"category":274,"description":885,"authors":886,"date":887},"Bringing your application from idea to production using Python, Rust, and GitLab CI","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678507/Blog/Hero%20Images/lightbulb.jpg","GitLab hero Mario Garcia demos the intricate process at GitLab Commit London.",[5],"2019-11-15",{"slug":889,"externalUrl":-1},"python-rust-and-gitlab-ci",{"content":891,"config":897},{"title":892,"heroImage":893,"category":695,"description":894,"authors":895,"date":896},"Getting Started with Kubernetes","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678474/Blog/Hero%20Images/clouds_kubernetes101.jpg","Pods, nodes, clusters – oh my! Get the lowdown on Kubernetes from Brendan O'Leary's talk at Contribute 2019.",[5],"2019-10-24",{"slug":898,"externalUrl":-1},"kubernetes-101",{"content":900,"config":906},{"title":901,"heroImage":902,"category":705,"description":903,"authors":904,"date":905},"GitLab's top tools for remote workers","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678459/Blog/Hero%20Images/darren_backpack_iceland.jpg","GitLab team members open their backpacks to share their top tools for remote work.",[5],"2019-10-10",{"slug":907,"externalUrl":-1},"whats-in-your-backpack",{"content":909,"config":915},{"title":910,"heroImage":911,"category":686,"description":912,"authors":913,"date":914},"GitLab's unconventional journey to CI/CD and Kubernetes","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678397/Blog/Hero%20Images/raphael-biscaldi-cicd.jpg","How the Delivery team at GitLab used our existing resources to overhaul our system to make way for CI/CD.",[5],"2019-10-03",{"slug":916,"externalUrl":-1},"gitlab-journey-to-cicd",{"content":918,"config":924},{"title":919,"heroImage":920,"category":686,"description":921,"authors":922,"date":923},"How to build a CI/CD pipeline in 20 minutes or less","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666903/Blog/Hero%20Images/pipeline.jpg","Deploying your pipeline to Kubernetes is just a 'git push' away using GitLab's Auto DevOps feature.",[5],"2019-09-26",{"slug":925,"externalUrl":-1},"building-a-cicd-pipeline-in-20-mins",{"content":927,"config":933},{"title":928,"heroImage":929,"category":705,"description":930,"authors":931,"date":932},"How to push code from a hammock","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678958/Blog/Hero%20Images/hammock.jpg","Our remote work dream team balances globetrotting with career advancement at GitLab.",[5],"2019-09-23",{"slug":934,"externalUrl":-1},"how-to-push-code-from-a-hammock",{"content":936,"config":942},{"title":937,"heroImage":938,"category":686,"description":939,"authors":940,"date":941},"Why we created a Memory team at GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678549/Blog/Hero%20Images/memory_team_arie-wubben.jpg","GitLab has a memory problem, so we created a specialized team to fix it.",[5],"2019-09-13",{"slug":943,"externalUrl":-1},"why-we-created-the-gitlab-memory-team",{"content":945,"config":951},{"title":946,"heroImage":947,"category":705,"description":948,"authors":949,"date":950},"Coworking home offices, working on the go - GitLab on remote work","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680818/Blog/Hero%20Images/homeofficecover2.jpg","GitLab team members share how they make their unique workspaces work for them, and see how they could work for you too!",[5],"2019-09-12",{"slug":952,"externalUrl":-1},"not-everyone-has-a-home-office",{"content":954,"config":960},{"title":955,"heroImage":956,"category":705,"description":957,"authors":958,"date":959},"How we double the GitLab summit every year","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673134/Blog/Hero%20Images/scale-our-summits.jpg","Take a deep dive into the evolution of our summit, GitLab Contribute, keeping pace with a company that practically doubles in size annually.",[5],"2019-09-02",{"slug":961,"externalUrl":-1},"how-we-scaled-our-summits",{"content":963,"config":969},{"title":964,"heroImage":965,"category":274,"description":966,"authors":967,"date":968},"How we plan to build more observability tools on GitLab monitoring","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665484/Blog/Hero%20Images/monitoring-update-feature-image.jpg","Get the scoop on our plan to close the DevOps loop.",[5],"2019-08-29",{"slug":970,"externalUrl":-1},"monitoring-team-update",{"content":972,"config":978},{"title":973,"heroImage":974,"category":705,"description":975,"authors":976,"date":977},"How being all-remote helps us practice our values at GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680686/Blog/Hero%20Images/webcast-cover.png","GitLab CEO Sid Sijbrandij and Mark Frein of InVision talk about why all-remote is the future, and moving beyond 'But how do you know they're working?'",[5],"2019-07-31",{"slug":979,"externalUrl":-1},"pyb-all-remote-mark-frein",{"content":981,"config":988},{"title":982,"heroImage":983,"category":686,"description":984,"authors":985,"date":987},"We've open sourced 3 tools to help troubleshoot system performance","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670405/Blog/Hero%20Images/open_source_tools.jpg","Say hello to the open source tools our Support team is using to better summarize customer performance data – and find out how they can help you.",[986,5],"Will Chandler","2019-07-24",{"slug":989,"externalUrl":-1},"three-new-support-tools",{"content":991,"config":997},{"title":992,"heroImage":993,"category":686,"description":994,"authors":995,"date":996},"How to use Prometheus for anomaly detection in GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667819/Blog/Hero%20Images/anomaly-detection-cover.png","Explore how Prometheus query language can be used to help you diagnose incidents, detect performance regressions, tackle abuse, and more.",[5],"2019-07-23",{"slug":998,"externalUrl":-1},"anomaly-detection-using-prometheus",{"content":1000,"config":1006},{"title":1001,"heroImage":1002,"category":274,"description":1003,"authors":1004,"date":1005},"The secret to an enduring co-founder relationship? Have those crucial conversations","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680642/Blog/Hero%20Images/cofounders_phone.jpg","Our CEO sits down with leadership psychologist Banu Hantal to discuss his relationship with GitLab co-founder Dmitriy Zaporozhets.",[5],"2019-06-21",{"slug":1007,"externalUrl":-1},"cofounder-relations",{"content":1009,"config":1016},{"title":1010,"heroImage":1011,"category":705,"description":1012,"authors":1013,"date":1015},"A day in the life of the \"average\" remote worker","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670134/Blog/Hero%20Images/remote-life-cover.png","Go on, you know you're curious! Explore a day in the life of GitLab team members from around the world.",[5,1014],"Charlie Ablett","2019-06-18",{"slug":1017,"externalUrl":-1},"day-in-the-life-remote-worker",{"content":1019,"config":1025},{"title":1020,"heroImage":1021,"category":695,"description":1022,"authors":1023,"date":1024},"You contributed 1 million merge requests in a month!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680631/Blog/Hero%20Images/1m-merge-requests-cover.png","GitLab.com surpassed 1 million merge requests in March 2019, hitting a new record for monthly engagement.",[5],"2019-06-06",{"slug":1026,"externalUrl":-1},"1-mil-merge-requests",{"content":1028,"config":1035},{"title":1029,"heroImage":1030,"category":705,"description":1031,"authors":1032,"date":1034},"What we learned at Contribute 2019","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670139/Blog/Hero%20Images/gitlab-contribute-team-photo.png","Community is everything, all remote makes contribution possible, CMO Todd Barr plays a mean trumpet, and more takeaways from Contribute 2019.",[1033,5],"Valerie Silverthorne","2019-06-04",{"slug":1036,"externalUrl":-1},"contribute-wrap-up",1772652054819]