[{"data":1,"prerenderedAt":717},["ShallowReactive",2],{"/en-us/customers/haven-technologies/":3,"navigation-en-us":73,"banner-en-us":491,"footer-en-us":506},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":11,"config":62,"_id":67,"_type":68,"title":9,"_source":69,"_file":70,"_stem":71,"_extension":72},"/en-us/customers/haven-technologies","customers",false,"",{"title":9,"description":10},"Haven Technologies","How Haven Technologies moved to Kubernetes with GitLab",{"name":9,"logo":12,"hero":10,"heroImage":13,"benefits":14,"industry":27,"employeeCount":28,"location":29,"solution":30,"stats":31,"headline":41,"summary":42,"quotes":43,"content":48,"contributors":61},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1745517985/cn8r4icftxdvywoz7vil.png","https://res.cloudinary.com/about-gitlab-com/image/upload/v1745518443/w0fknjkdl82dtqcsx1g7.jpg",[15,19,23],{"metric":16,"config":17},"Increased efficiency",{"icon":18},"Benefit",{"metric":20,"config":21},"Improved security",{"icon":22},"SecureAlt2",{"metric":24,"config":25},"Accelerated development",{"icon":26},"Accelerate","Insurance Tech","400","New York, New York, United States","GitLab Ultimate",[32,35,38],{"value":33,"metric":34},"$7","Cost savings per user monthly, across 150+ users",{"value":36,"metric":37},"62%","Of users ran a secret detection job in the last month",{"value":39,"metric":40},"66%","Of users have run a secure scanner job in the last month","Haven Technologies is doubling down on a Kubernetes strategy — and GitLab is helping the digital insurance leader cut costs and drive efficiency during the transition.","GitLab’s DevSecOps Platform is helping Haven Technologies drive improvements to efficiency, security, and development velocity.\n",[44],{"quoteText":45,"author":46,"authorTitle":47,"authorCompany":9},"GitLab’s commitment to an open source community meant that we could engage directly with engineers to work through difficult technical problems.\"\n","Evan O’Connor","Platform Engineering Manager",[49,52,55,58],{"header":50,"text":51},"Making insurance more accessible through a world-class digital platform","Haven Technologies is an insurance technology software as a service (SaaS) provider based in New York, New York. Prior to becoming Haven Technologies, the company helped transform the life insurance industry in 2015 with the launch of Haven Life, a digital insurance technology company that allowed customers to get a quote, apply for a policy, get approved, and manage that policy, almost entirely online. Now, Haven Technologies makes its unique cloud-native insurance platform available to other businesses in the life, annuities, and disability industries. An example was [HealthBridge](https://www.massmutual.com/healthbridge), a free online life insurance policy offered by MassMutual to eligible frontline healthcare workers and volunteers in the wake of the COVID pandemic, that was built and launched in just a few weeks using the Haven Technologies solution.\n",{"header":53,"text":54},"A growing organization reaches a breaking point","As an insurance technology company, Haven Technologies is strongly aware of the need to protect sensitive customer data. The company’s code is valuable intellectual property, says platform engineering manager Evan O’Connor.\n\nHaven Technologies started using GitLab for version control and source code management (SCM). By 2019, the company was heavily utilizing GitLab CI/CD and container registry. Developers were continuously adding new projects, each of which had pipelines to build Docker images, run units, regression and integration tests, and security scanning.\n\nAn early project was to move all Docker builds to GitLab and build images there, which was a big time-saver as images were pre-built and tested come deploy time, says O’Connor.\n\nIn late 2019, Haven Technologies began its journey to migrate to a self-managed GitLab instance on Kubernetes using Helm charts to allow for greater scalability, customization, and security. Prior to that time, Haven Technologies used the Omnibus deployment, a more commonly used installation that requires minimal configuration to get up and running.\n\nBefore Kubernetes, the team used Convox, which is built on Docker and ECS (Elastic Container Service) and aims to make it easy to deploy and manage applications in the cloud. This setup worked well as a smaller organization, but O’Connor says that eventually, they reached a breaking point where Convox did not provide enough control over their cloud resources. During peak usage days (especially around release time), GitLab would become painfully slow and users would receive frequent 500 errors in the UI and failed pipelines, he recalls.\n",{"header":56,"text":57},"Braving the unknown with a trusted partner","As an innovator in the insurance tech space, the Haven Technologies engineering team felt they were a natural fit to become an early adopter of [GitLab’s Helm Chart](https://docs.gitlab.com/charts/?_gl=1*d7zk1c*_ga*MTU1MDMzNTYwOS4xNjQ0OTYxNjk3*_ga_ENFH3X7M5Y*MTY4MTkzMzY3MC40MTUuMC4xNjgxOTMzNjgyLjAuMC4w). Haven Technologies leadership was given fair warning that because the product was new, they might encounter roadblocks that would require help from GitLab’s support and engineering teams.\n\nBut Haven Technologies was undaunted. “Our team was somewhat new to Kubernetes and Helm, but GitLab became an opportunity for us to learn and gain experience that we could apply when we moved the rest of our apps to Kubernetes,” says O’Connor.\n\nAnd GitLab made the communication seamless. “GitLab’s commitment to an open source community meant that we could engage directly with engineers to work through difficult technical problems,’’ says O’Connor. “Overall, I would recommend adopting the Helm Charts if your team is experienced with Kubernetes or if, like us, you are willing to brave the unknown with the goal of using the latest technology and a desire to contribute to improving the Helm Charts for everyone.”\n\nThe decision to adopt GitLab’s Helm Chart was in part influenced by a larger move to Kubernetes for all of Haven Technologies’ applications. At the same time Haven Technologies decided to become an early adopter of the GitLab Helm Chart, the engineering team was also planning to move the entire production and user acceptance testing (UAT) environments to run on Kubernetes. It made a lot of sense to deploy GitLab in the same way as their other applications, so all of the configurations would be in one place, says O’Connor.\n\nThe other advantage of Kubernetes was that autoscaling and high availability are native to the software and are easy to enable via Helm Charts. “If we went in the direction of multiple EC2 instances, we would have to manage many different configurations that each would require their own solutions for autoscaling and high availability,’’ says O’Connor.\n\nThe first prerequisite for running GitLab on Kubernetes is to build a cluster. Haven Technologies chose Amazon EKS, since all of the company’s applications reside in AWS. Engineers decided to build out GitLab in both UAT and production environments to allow them to test upgrades and other configuration changes before they went live.\n\nHaven Technologies uses Jira and Terraform, and uses GitLab pipelines to automate Terraform tasks.\n\nO’Connor highly recommends maintaining a staging environment for GitLab to maintain stability and reduce the risk of data loss during difficult updates. “GitLab makes this easy, and only one license is needed to support both environments,’’ he says. “Using Terraform and Helm, our UAT and production environments are configured almost identically, aside from more conservative scaling in UAT to save money.”\n\nIn the future, O’Connor says engineers will aim to build a way to easily shut down or spin up their UAT GitLab system so they do not have idle machines running when they are not needed.\n\nAnother struggle was finding a way to load test their UAT setup before cutting it into production. Volunteers from the development and QA teams were asked to help load test GitLab and search for abnormalities. O’Connor’s team created a spreadsheet and had users enter any abnormalities they found. This helped the team fix some misconfigurations before fully cutting over, he says.\n\nEngineers had built out the monitoring portion of the Helm Charts after they had cut over their production GitLab system to Kubernetes. This made diagnosing issues that were caused by load especially difficult. At the time, all they had were pod-level CPU and memory metrics reported by the Kubernetes cluster. These dashboards helped team members resolve issues where their pod limits were set too conservatively.\n\nHaven Technologies also utilized AWS CloudWatch metrics and log queries to look for bottlenecks and correlate issues with AWS resources. \n\nGoing forward, as issues come up when testing GitLab on Kubernetes, O’Connor says they will create dashboards to identify them more quickly.\n",{"header":59,"text":60},"More deployments, more testing, lower costs","By using the GitLab package registry, Haven Technologies has been able to stop using the public npm registry — at a cost of $7 per user for more than 150 users (as of December 23, 2022). By implementing autoscaling Docker-machine and Kubernetes runners, O’Connor’s team was able to increase the number of regression and integration tests performed on each commit to developer branches.\n\nThe team has also greatly increased the number of security pipelines they are running on each merge request, which has helped them to increase developer involvement in securing applications earlier in the development lifecycle.\n\nOverall, using GitLab CI has added value to Haven Technologies’ software development lifecycle by automating a number of processes — especially around branching — and freeing up developer time.\n",null,{"template":63,"size":64,"region":65,"industry":66},"CaseStudy","mm","amer","technology","content:en-us:customers:haven-technologies.yml","yaml","content","en-us/customers/haven-technologies.yml","en-us/customers/haven-technologies","yml",{"_path":74,"_dir":75,"_draft":6,"_partial":6,"_locale":7,"data":76,"_id":487,"_type":68,"title":488,"_source":69,"_file":489,"_stem":490,"_extension":72},"/shared/en-us/main-navigation","en-us",{"logo":77,"freeTrial":82,"sales":87,"login":92,"items":97,"search":428,"minimal":459,"duo":478},{"config":78},{"href":79,"dataGaName":80,"dataGaLocation":81},"/","gitlab logo","header",{"text":83,"config":84},"Get free trial",{"href":85,"dataGaName":86,"dataGaLocation":81},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":88,"config":89},"Talk to sales",{"href":90,"dataGaName":91,"dataGaLocation":81},"/sales/","sales",{"text":93,"config":94},"Sign in",{"href":95,"dataGaName":96,"dataGaLocation":81},"https://gitlab.com/users/sign_in/","sign in",[98,142,238,243,349,409],{"text":99,"config":100,"cards":102,"footer":125},"Platform",{"dataNavLevelOne":101},"platform",[103,109,117],{"title":99,"description":104,"link":105},"The most comprehensive AI-powered DevSecOps Platform",{"text":106,"config":107},"Explore our Platform",{"href":108,"dataGaName":101,"dataGaLocation":81},"/platform/",{"title":110,"description":111,"link":112},"GitLab Duo (AI)","Build software faster with AI at every stage of development",{"text":113,"config":114},"Meet GitLab Duo",{"href":115,"dataGaName":116,"dataGaLocation":81},"/gitlab-duo/","gitlab duo ai",{"title":118,"description":119,"link":120},"Why GitLab","10 reasons why Enterprises choose GitLab",{"text":121,"config":122},"Learn more",{"href":123,"dataGaName":124,"dataGaLocation":81},"/why-gitlab/","why gitlab",{"title":126,"items":127},"Get started with",[128,133,138],{"text":129,"config":130},"Platform Engineering",{"href":131,"dataGaName":132,"dataGaLocation":81},"/solutions/platform-engineering/","platform engineering",{"text":134,"config":135},"Developer Experience",{"href":136,"dataGaName":137,"dataGaLocation":81},"/developer-experience/","Developer experience",{"text":139,"config":140},"MLOps",{"href":141,"dataGaName":139,"dataGaLocation":81},"/topics/devops/the-role-of-ai-in-devops/",{"text":143,"left":144,"config":145,"link":147,"lists":151,"footer":220},"Product",true,{"dataNavLevelOne":146},"solutions",{"text":148,"config":149},"View all Solutions",{"href":150,"dataGaName":146,"dataGaLocation":81},"/solutions/",[152,177,199],{"title":153,"description":154,"link":155,"items":160},"Automation","CI/CD and automation to accelerate deployment",{"config":156},{"icon":157,"href":158,"dataGaName":159,"dataGaLocation":81},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[161,165,169,173],{"text":162,"config":163},"CI/CD",{"href":164,"dataGaLocation":81,"dataGaName":162},"/solutions/continuous-integration/",{"text":166,"config":167},"AI-Assisted Development",{"href":115,"dataGaLocation":81,"dataGaName":168},"AI assisted development",{"text":170,"config":171},"Source Code Management",{"href":172,"dataGaLocation":81,"dataGaName":170},"/solutions/source-code-management/",{"text":174,"config":175},"Automated Software Delivery",{"href":158,"dataGaLocation":81,"dataGaName":176},"Automated software delivery",{"title":178,"description":179,"link":180,"items":185},"Security","Deliver code faster without compromising security",{"config":181},{"href":182,"dataGaName":183,"dataGaLocation":81,"icon":184},"/solutions/security-compliance/","security and compliance","ShieldCheckLight",[186,189,194],{"text":187,"config":188},"Security & Compliance",{"href":182,"dataGaLocation":81,"dataGaName":187},{"text":190,"config":191},"Software Supply Chain Security",{"href":192,"dataGaLocation":81,"dataGaName":193},"/solutions/supply-chain/","Software supply chain security",{"text":195,"config":196},"Compliance & Governance",{"href":197,"dataGaLocation":81,"dataGaName":198},"/solutions/continuous-software-compliance/","Compliance and governance",{"title":200,"link":201,"items":206},"Measurement",{"config":202},{"icon":203,"href":204,"dataGaName":205,"dataGaLocation":81},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[207,211,215],{"text":208,"config":209},"Visibility & Measurement",{"href":204,"dataGaLocation":81,"dataGaName":210},"Visibility and Measurement",{"text":212,"config":213},"Value Stream Management",{"href":214,"dataGaLocation":81,"dataGaName":212},"/solutions/value-stream-management/",{"text":216,"config":217},"Analytics & Insights",{"href":218,"dataGaLocation":81,"dataGaName":219},"/solutions/analytics-and-insights/","Analytics and insights",{"title":221,"items":222},"GitLab for",[223,228,233],{"text":224,"config":225},"Enterprise",{"href":226,"dataGaLocation":81,"dataGaName":227},"/enterprise/","enterprise",{"text":229,"config":230},"Small Business",{"href":231,"dataGaLocation":81,"dataGaName":232},"/small-business/","small business",{"text":234,"config":235},"Public Sector",{"href":236,"dataGaLocation":81,"dataGaName":237},"/solutions/public-sector/","public sector",{"text":239,"config":240},"Pricing",{"href":241,"dataGaName":242,"dataGaLocation":81,"dataNavLevelOne":242},"/pricing/","pricing",{"text":244,"config":245,"link":247,"lists":251,"feature":336},"Resources",{"dataNavLevelOne":246},"resources",{"text":248,"config":249},"View all resources",{"href":250,"dataGaName":246,"dataGaLocation":81},"/resources/",[252,285,308],{"title":253,"items":254},"Getting started",[255,260,265,270,275,280],{"text":256,"config":257},"Install",{"href":258,"dataGaName":259,"dataGaLocation":81},"/install/","install",{"text":261,"config":262},"Quick start guides",{"href":263,"dataGaName":264,"dataGaLocation":81},"/get-started/","quick setup checklists",{"text":266,"config":267},"Learn",{"href":268,"dataGaLocation":81,"dataGaName":269},"https://university.gitlab.com/","learn",{"text":271,"config":272},"Product documentation",{"href":273,"dataGaName":274,"dataGaLocation":81},"https://docs.gitlab.com/","product documentation",{"text":276,"config":277},"Best practice videos",{"href":278,"dataGaName":279,"dataGaLocation":81},"/getting-started-videos/","best practice videos",{"text":281,"config":282},"Integrations",{"href":283,"dataGaName":284,"dataGaLocation":81},"/integrations/","integrations",{"title":286,"items":287},"Discover",[288,293,298,303],{"text":289,"config":290},"Customer success stories",{"href":291,"dataGaName":292,"dataGaLocation":81},"/customers/","customer success stories",{"text":294,"config":295},"Blog",{"href":296,"dataGaName":297,"dataGaLocation":81},"/blog/","blog",{"text":299,"config":300},"Remote",{"href":301,"dataGaName":302,"dataGaLocation":81},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":304,"config":305},"TeamOps",{"href":306,"dataGaName":307,"dataGaLocation":81},"/teamops/","teamops",{"title":309,"items":310},"Connect",[311,316,321,326,331],{"text":312,"config":313},"GitLab Services",{"href":314,"dataGaName":315,"dataGaLocation":81},"/services/","services",{"text":317,"config":318},"Community",{"href":319,"dataGaName":320,"dataGaLocation":81},"/community/","community",{"text":322,"config":323},"Forum",{"href":324,"dataGaName":325,"dataGaLocation":81},"https://forum.gitlab.com/","forum",{"text":327,"config":328},"Events",{"href":329,"dataGaName":330,"dataGaLocation":81},"/events/","events",{"text":332,"config":333},"Partners",{"href":334,"dataGaName":335,"dataGaLocation":81},"/partners/","partners",{"backgroundColor":337,"textColor":338,"text":339,"image":340,"link":344},"#2f2a6b","#fff","Insights for the future of software development",{"altText":341,"config":342},"the source promo card",{"src":343},"/images/navigation/the-source-promo-card.svg",{"text":345,"config":346},"Read the latest",{"href":347,"dataGaName":348,"dataGaLocation":81},"/the-source/","the source",{"text":350,"config":351,"lists":353},"Company",{"dataNavLevelOne":352},"company",[354],{"items":355},[356,361,367,369,374,379,384,389,394,399,404],{"text":357,"config":358},"About",{"href":359,"dataGaName":360,"dataGaLocation":81},"/company/","about",{"text":362,"config":363,"footerGa":366},"Jobs",{"href":364,"dataGaName":365,"dataGaLocation":81},"/jobs/","jobs",{"dataGaName":365},{"text":327,"config":368},{"href":329,"dataGaName":330,"dataGaLocation":81},{"text":370,"config":371},"Leadership",{"href":372,"dataGaName":373,"dataGaLocation":81},"/company/team/e-group/","leadership",{"text":375,"config":376},"Team",{"href":377,"dataGaName":378,"dataGaLocation":81},"/company/team/","team",{"text":380,"config":381},"Handbook",{"href":382,"dataGaName":383,"dataGaLocation":81},"https://handbook.gitlab.com/","handbook",{"text":385,"config":386},"Investor relations",{"href":387,"dataGaName":388,"dataGaLocation":81},"https://ir.gitlab.com/","investor relations",{"text":390,"config":391},"Trust Center",{"href":392,"dataGaName":393,"dataGaLocation":81},"/security/","trust center",{"text":395,"config":396},"AI Transparency Center",{"href":397,"dataGaName":398,"dataGaLocation":81},"/ai-transparency-center/","ai transparency center",{"text":400,"config":401},"Newsletter",{"href":402,"dataGaName":403,"dataGaLocation":81},"/company/contact/","newsletter",{"text":405,"config":406},"Press",{"href":407,"dataGaName":408,"dataGaLocation":81},"/press/","press",{"text":410,"config":411,"lists":412},"Contact us",{"dataNavLevelOne":352},[413],{"items":414},[415,418,423],{"text":88,"config":416},{"href":90,"dataGaName":417,"dataGaLocation":81},"talk to sales",{"text":419,"config":420},"Get help",{"href":421,"dataGaName":422,"dataGaLocation":81},"/support/","get help",{"text":424,"config":425},"Customer portal",{"href":426,"dataGaName":427,"dataGaLocation":81},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":429,"login":430,"suggestions":437},"Close",{"text":431,"link":432},"To search repositories and projects, login to",{"text":433,"config":434},"gitlab.com",{"href":95,"dataGaName":435,"dataGaLocation":436},"search login","search",{"text":438,"default":439},"Suggestions",[440,442,446,448,452,456],{"text":110,"config":441},{"href":115,"dataGaName":110,"dataGaLocation":436},{"text":443,"config":444},"Code Suggestions (AI)",{"href":445,"dataGaName":443,"dataGaLocation":436},"/solutions/code-suggestions/",{"text":162,"config":447},{"href":164,"dataGaName":162,"dataGaLocation":436},{"text":449,"config":450},"GitLab on AWS",{"href":451,"dataGaName":449,"dataGaLocation":436},"/partners/technology-partners/aws/",{"text":453,"config":454},"GitLab on Google Cloud",{"href":455,"dataGaName":453,"dataGaLocation":436},"/partners/technology-partners/google-cloud-platform/",{"text":457,"config":458},"Why GitLab?",{"href":123,"dataGaName":457,"dataGaLocation":436},{"freeTrial":460,"mobileIcon":465,"desktopIcon":470,"secondaryButton":473},{"text":461,"config":462},"Start free trial",{"href":463,"dataGaName":86,"dataGaLocation":464},"https://gitlab.com/-/trials/new/","nav",{"altText":466,"config":467},"Gitlab Icon",{"src":468,"dataGaName":469,"dataGaLocation":464},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":466,"config":471},{"src":472,"dataGaName":469,"dataGaLocation":464},"/images/brand/gitlab-logo-type.svg",{"text":474,"config":475},"Get Started",{"href":476,"dataGaName":477,"dataGaLocation":464},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/compare/gitlab-vs-github/","get started",{"freeTrial":479,"mobileIcon":483,"desktopIcon":485},{"text":480,"config":481},"Learn more about GitLab Duo",{"href":115,"dataGaName":482,"dataGaLocation":464},"gitlab duo",{"altText":466,"config":484},{"src":468,"dataGaName":469,"dataGaLocation":464},{"altText":466,"config":486},{"src":472,"dataGaName":469,"dataGaLocation":464},"content:shared:en-us:main-navigation.yml","Main Navigation","shared/en-us/main-navigation.yml","shared/en-us/main-navigation",{"_path":492,"_dir":75,"_draft":6,"_partial":6,"_locale":7,"title":493,"button":494,"image":498,"config":501,"_id":503,"_type":68,"_source":69,"_file":504,"_stem":505,"_extension":72},"/shared/en-us/banner","is now in public beta!",{"text":121,"config":495},{"href":496,"dataGaName":497,"dataGaLocation":81},"/gitlab-duo/agent-platform/","duo banner",{"config":499},{"src":500},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1753720689/somrf9zaunk0xlt7ne4x.svg",{"layout":502},"release","content:shared:en-us:banner.yml","shared/en-us/banner.yml","shared/en-us/banner",{"_path":507,"_dir":75,"_draft":6,"_partial":6,"_locale":7,"data":508,"_id":713,"_type":68,"title":714,"_source":69,"_file":715,"_stem":716,"_extension":72},"/shared/en-us/main-footer",{"text":509,"source":510,"edit":516,"contribute":521,"config":526,"items":531,"minimal":705},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":511,"config":512},"View page source",{"href":513,"dataGaName":514,"dataGaLocation":515},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":517,"config":518},"Edit this page",{"href":519,"dataGaName":520,"dataGaLocation":515},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":522,"config":523},"Please contribute",{"href":524,"dataGaName":525,"dataGaLocation":515},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":527,"facebook":528,"youtube":529,"linkedin":530},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[532,555,612,641,675],{"title":99,"links":533,"subMenu":538},[534],{"text":535,"config":536},"DevSecOps platform",{"href":108,"dataGaName":537,"dataGaLocation":515},"devsecops platform",[539],{"title":239,"links":540},[541,545,550],{"text":542,"config":543},"View plans",{"href":241,"dataGaName":544,"dataGaLocation":515},"view plans",{"text":546,"config":547},"Why Premium?",{"href":548,"dataGaName":549,"dataGaLocation":515},"/pricing/premium/","why premium",{"text":551,"config":552},"Why Ultimate?",{"href":553,"dataGaName":554,"dataGaLocation":515},"/pricing/ultimate/","why ultimate",{"title":556,"links":557},"Solutions",[558,563,566,568,573,578,582,585,589,594,596,599,602,607],{"text":559,"config":560},"Digital transformation",{"href":561,"dataGaName":562,"dataGaLocation":515},"/topics/digital-transformation/","digital transformation",{"text":187,"config":564},{"href":182,"dataGaName":565,"dataGaLocation":515},"security & compliance",{"text":176,"config":567},{"href":158,"dataGaName":159,"dataGaLocation":515},{"text":569,"config":570},"Agile development",{"href":571,"dataGaName":572,"dataGaLocation":515},"/solutions/agile-delivery/","agile delivery",{"text":574,"config":575},"Cloud transformation",{"href":576,"dataGaName":577,"dataGaLocation":515},"/topics/cloud-native/","cloud transformation",{"text":579,"config":580},"SCM",{"href":172,"dataGaName":581,"dataGaLocation":515},"source code management",{"text":162,"config":583},{"href":164,"dataGaName":584,"dataGaLocation":515},"continuous integration & delivery",{"text":586,"config":587},"Value stream management",{"href":214,"dataGaName":588,"dataGaLocation":515},"value stream management",{"text":590,"config":591},"GitOps",{"href":592,"dataGaName":593,"dataGaLocation":515},"/solutions/gitops/","gitops",{"text":224,"config":595},{"href":226,"dataGaName":227,"dataGaLocation":515},{"text":597,"config":598},"Small business",{"href":231,"dataGaName":232,"dataGaLocation":515},{"text":600,"config":601},"Public sector",{"href":236,"dataGaName":237,"dataGaLocation":515},{"text":603,"config":604},"Education",{"href":605,"dataGaName":606,"dataGaLocation":515},"/solutions/education/","education",{"text":608,"config":609},"Financial services",{"href":610,"dataGaName":611,"dataGaLocation":515},"/solutions/finance/","financial services",{"title":244,"links":613},[614,616,618,620,623,625,627,629,631,633,635,637,639],{"text":256,"config":615},{"href":258,"dataGaName":259,"dataGaLocation":515},{"text":261,"config":617},{"href":263,"dataGaName":264,"dataGaLocation":515},{"text":266,"config":619},{"href":268,"dataGaName":269,"dataGaLocation":515},{"text":271,"config":621},{"href":273,"dataGaName":622,"dataGaLocation":515},"docs",{"text":294,"config":624},{"href":296,"dataGaName":297,"dataGaLocation":515},{"text":289,"config":626},{"href":291,"dataGaName":292,"dataGaLocation":515},{"text":299,"config":628},{"href":301,"dataGaName":302,"dataGaLocation":515},{"text":312,"config":630},{"href":314,"dataGaName":315,"dataGaLocation":515},{"text":304,"config":632},{"href":306,"dataGaName":307,"dataGaLocation":515},{"text":317,"config":634},{"href":319,"dataGaName":320,"dataGaLocation":515},{"text":322,"config":636},{"href":324,"dataGaName":325,"dataGaLocation":515},{"text":327,"config":638},{"href":329,"dataGaName":330,"dataGaLocation":515},{"text":332,"config":640},{"href":334,"dataGaName":335,"dataGaLocation":515},{"title":350,"links":642},[643,645,647,649,651,653,655,659,664,666,668,670],{"text":357,"config":644},{"href":359,"dataGaName":352,"dataGaLocation":515},{"text":362,"config":646},{"href":364,"dataGaName":365,"dataGaLocation":515},{"text":370,"config":648},{"href":372,"dataGaName":373,"dataGaLocation":515},{"text":375,"config":650},{"href":377,"dataGaName":378,"dataGaLocation":515},{"text":380,"config":652},{"href":382,"dataGaName":383,"dataGaLocation":515},{"text":385,"config":654},{"href":387,"dataGaName":388,"dataGaLocation":515},{"text":656,"config":657},"Sustainability",{"href":658,"dataGaName":656,"dataGaLocation":515},"/sustainability/",{"text":660,"config":661},"Diversity, inclusion and belonging (DIB)",{"href":662,"dataGaName":663,"dataGaLocation":515},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":390,"config":665},{"href":392,"dataGaName":393,"dataGaLocation":515},{"text":400,"config":667},{"href":402,"dataGaName":403,"dataGaLocation":515},{"text":405,"config":669},{"href":407,"dataGaName":408,"dataGaLocation":515},{"text":671,"config":672},"Modern Slavery Transparency Statement",{"href":673,"dataGaName":674,"dataGaLocation":515},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":676,"links":677},"Contact Us",[678,681,683,685,690,695,700],{"text":679,"config":680},"Contact an expert",{"href":90,"dataGaName":91,"dataGaLocation":515},{"text":419,"config":682},{"href":421,"dataGaName":422,"dataGaLocation":515},{"text":424,"config":684},{"href":426,"dataGaName":427,"dataGaLocation":515},{"text":686,"config":687},"Status",{"href":688,"dataGaName":689,"dataGaLocation":515},"https://status.gitlab.com/","status",{"text":691,"config":692},"Terms of use",{"href":693,"dataGaName":694,"dataGaLocation":515},"/terms/","terms of use",{"text":696,"config":697},"Privacy statement",{"href":698,"dataGaName":699,"dataGaLocation":515},"/privacy/","privacy statement",{"text":701,"config":702},"Cookie preferences",{"dataGaName":703,"dataGaLocation":515,"id":704,"isOneTrustButton":144},"cookie preferences","ot-sdk-btn",{"items":706},[707,709,711],{"text":691,"config":708},{"href":693,"dataGaName":694,"dataGaLocation":515},{"text":696,"config":710},{"href":698,"dataGaName":699,"dataGaLocation":515},{"text":701,"config":712},{"dataGaName":703,"dataGaLocation":515,"id":704,"isOneTrustButton":144},"content:shared:en-us:main-footer.yml","Main Footer","shared/en-us/main-footer.yml","shared/en-us/main-footer",1754424510677]