[{"data":1,"prerenderedAt":701},["ShallowReactive",2],{"/en-us/blog/gitlab-in-action-part-2/":3,"navigation-en-us":32,"banner-en-us":448,"footer-en-us":463,"Robert Speicher":674,"next-steps-en-us":686},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":22,"_id":25,"_type":26,"title":27,"_source":28,"_file":29,"_stem":30,"_extension":31},"/en-us/blog/gitlab-in-action-part-2","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"GitLab in action: Part 2","The conclusion to our six-month trip around the world!","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682443/Blog/Hero%20Images/cover.jpg","https://about.gitlab.com/blog/gitlab-in-action-part-2","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab in action: Part 2\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Robert Speicher\"}],\n        \"datePublished\": \"2017-03-31\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21},[18],"Robert Speicher","2017-03-31","\n\n_Between June and December of 2016, two GitLab developers traveled around the\nworld visiting team members and working remotely. Be sure to read [Around the\nWorld in 6 Releases](/blog/around-the-world-in-6-releases/) for more\nbackground on the trip._\n\n\u003C!-- more -->\n\nFor the first part of our trip we were lucky enough to have [Emily] join us for\nthree of the six cities in the US, and because she knew we were too ~~lazy~~\nbusy working, she [wrote a blog post for us](/blog/gitlab-in-action/)\ndetailing those stops.\n\nUnfortunately we couldn't convince her to join us for any other legs of the trip\n(and we _desperately_ needed her planning and organizational skills, if not her\npenchant for listening to Dolly Parton's entire discography), so we lost our\nfavorite unofficial biographer, but I'll do my best to fill in.\n\n## Mexico City, Mexico (2016-08-07)\n\nAfter joining us in Vegas, [John] went back to Nashville to grab his passport so\nhe could rejoin us in Mexico City.\n\nOriginally we planned to spend two weeks there, and then two weeks in Rio de\nJaneiro, but when our Brazilian locals said they could only come for the second\nweek, combined with all of the (overblown) stories about the dangers of Rio\nduring the Olympics at the time, and the fact that we were enjoying Mexico City\nso much, we decided to stay for a third week.\n\nStaying in one place for an extended period of time was a nice change of pace\nafter we'd gotten used to being in an airport every Sunday to fly to a new city,\nand we took the extra time to see more of the city and to meet more locals\noutside of GitLab. We really started to feel like we were _living_ here rather\nthan visiting.\n\n{: .text-center}\n[![Working on the rooftop garden of John's hotel in Hipódromo][mex-rooftop]{: .shadow}][mex-rooftop]\u003Cbr>\n_Working on the rooftop garden of John's hotel in Hipódromo_\n\nAs people would hear about our trip, common questions we got were \"Which city\nhas been your favorite so far?\" and \"Which city has had the best food?\", and\npeople were usually surprised when, without hesitation, we'd say \"Mexico City!\"\nIt's probably not surprising to hear that the city has fantastic Mexican food\n(and it does -- we ate tacos al pastor at [El Faraón][tacos] seven times in 10\ndays), but we had the best steak of our lives at [MIT], the best mac & cheese\nof the trip at [Balmori Roofbar][mac], and were introduced to the amazing\ndeliciousness of the Mexican [carajillo].\n\nWe spent one Saturday climbing the Pyramids of the Sun and Moon at\n[Teotihuacan](https://en.wikipedia.org/wiki/Teotihuacan), and another lazily\nfloating down the canals of\n[Xochimilco](https://en.wikipedia.org/wiki/Xochimilco).\n\n{: .text-center}\n[![The Pyramid of the Moon, from the top of the Pyramid of the Sun][mex-pyramid]{: .shadow}][mex-pyramid]\u003Cbr>\n_The Pyramid of the Moon, from the top of the Pyramid of the Sun_\n\n[tacos]: https://goo.gl/maps/d7Us14TE4i52\n[MIT]: https://goo.gl/maps/toZrvDEttrS2\n[mac]: https://goo.gl/maps/PetKNY5VkZk\n[carajillo]: https://en.wikipedia.org/wiki/Carajillo\n\n## Rio de Janeiro, Brazil (2016-08-29)\n\nWhile we don't have any team members living in Rio, we were joined there by\n[Douglas] from Lavras, and [Felipe] from Goiânia, who shared an apartment with\nus for the week, situated directly between the Ipanema and Copacabana beaches.\nSince we were all in the same (air-conditioned) spot with stable internet, we\npreferred setting up our office at the dining table every day.\n\n{: .text-center}\n[![Our temporary office in Rio][gig-office]{: .shadow}][gig-office]\n\n[Marcia] joined us later in the week to work and enjoy the Rio nightlife. I\ndiscovered the deliciousness that is [Amarula] and _may_ have invented a drink\n(Amarula and espresso, shaken, garnish with fresh ground cinnamon; try it, it's\namazing).\n\nWe paid a visit to (a very foggy) [Cristo Redentor], and spent our last day in\nRio relaxing on Copacabana beach, and enjoying a nice dinner at a Brazilian\nsteakhouse by the water.\n\n{: .text-center}\n[![Cristo Redentor through the fog][gig-redeemer]{: .shadow width=\"425px\"}][gig-redeemer]\n[![Our Rio crew][gig-group]{: .shadow width=\"425px\"}][gig-group]\u003Cbr>\n_Right: [Felipe], [Marcia], [Douwe], [Robert], and [Douglas]_\n\n[Cristo Redentor]: https://en.wikipedia.org/wiki/Christ_the_Redeemer_(statue)\n[Amarula]: https://en.wikipedia.org/wiki/Amarula\n\n## Sofia, Bulgaria (2016-09-19)\n\nAfter two weeks in our respective homes to see our families and adjust our\npacking strategies, we flew out to Sofia to begin the second half of our\nsix-month trip around the world.\n\nWe don't have any team members in Sofia, but it was the chosen location for the\n[EuRuKo 2016](http://euruko2016.org/) conference. [Zeger-Jan] joined us for the\nentire week leading up to the conference, where we were later joined by [Adam],\n[Axil], and [Dmitriy]. It was the first conference I'd ever been to, and being\napproached by random people recognizing our GitLab shirts and wanting to talk\nabout the company was a new phenomenon for me that never got old.\n\n{: .text-center}\n[![Our EuRuKo crew][sof-group]{: .shadow}][sof-group]\u003Cbr>\n_[Dmitriy], [Zeger-Jan], [Douwe], [Robert], [Adam], and [Axil] at EuRuKo's\nafter-party_\n\nWe're looking forward to EuRuKo 2017 in Budapest!\n\n## Warsaw, Poland (2016-09-25)\n\nWe got an apartment in the beautiful [Old Town](https://goo.gl/maps/HJctmiXFprt)\nneighborhood, and for the first two days we worked from a cafe next door with a\nnice view of the [Mały Powstaniec](https://en.wikipedia.org/wiki/Ma%C5%82y_Powstaniec)\nmemorial.\n\n{: .text-center}\n[![Mały Powstaniec memorial][waw-statue]{: .shadow width=\"600px\"}][waw-statue]\n\nWarsaw local [Kamil] joined us for dinner and drinks on multiple nights, while\n[Tomasz] and [Grzegorz] took trains from Olsztyn to meet up with us on separate\ndays. Grzegorz even stayed with us for one night and got to experience the\nworst sleeping accommodation we had for the entire trip. Sorry about that,\nbuddy!\n\nWe spent one afternoon working from Google's [Campus Warsaw](https://www.campus.co/warsaw/en)\nand, perhaps unsurprisingly, it had the [best connection of the\ntrip][waw-wifi].\n\n## Nice, France (2016-10-02)\n\nWhile the original trip itinerary had us staying in Warsaw for two weeks and\nthen going to Madrid, not booking everything in advance allowed us to make\nchanges on the fly, and we cut a week off of Warsaw in order to make a detour to\nFrance to rendezvous with [Rémy]. We loved walking around Nice, and having a\nlocal willing to play chauffeur for a bit allowed us to see Antibes and Cannes\nas well. It turns out the French Riviera is stunningly beautiful -- who knew?!\n\n{: .text-center}\n[![Sunset in Antibes][nce-sunset]{: .shadow width=\"600px\"}][nce-sunset]\n\nOn our last day we were dismayed to find out that some of the restaurants along\nthe Côte d'Azur have WiFi and that we could have been working from the beach all\nweek. Oh well, lessons for next time!\n\n{: .text-center}\n[![We didn't work here, but we could have!][nce-beach]{: .shadow width=\"600px\"}][nce-beach]\n\nIt was in Nice that we decided it would be fun to have souvenirs from this trip,\nso we started buying a refrigerator magnet at each stop. We're still in the\nprocess of getting magnets from the cities we visited before Nice, but thanks to\nour syndicate of team members all over the world, we're en route to having the\nwhole set.\n\n## Madrid, Spain (2016-10-09)\n\nWe planned our stop in Madrid to coincide with [Conferencia\nRails](http://conferenciaror.es/), where we got to see [Adam] again, this time\nas a guest speaker.\n\nWe met up with local [Chris P.] and had the honor of being the first team\nmembers he'd met in person. [Pablo] drove down from Zamora one afternoon to show\nus Segovia, and its stunning aqueduct:\n\n{: .text-center}\n[![Aqueduct of Segovia][mad-aqueduct]{: .shadow width=\"600px\"}][mad-aqueduct]\n\nMadrid is an amazing city that felt alive even at four in the morning, and the\nfood was a definite highlight -- it took the honors for [best burritos], [best\ntacos]\u003Cabbr title=\"Douwe disputes this and thinks the tacos in Mexico City were\nbetter. But he's wrong.\">*\u003C/abbr>, and [best sandwiches].\n\n[best burritos]: https://goo.gl/maps/TvYWBwVK51s\n[best tacos]: https://goo.gl/maps/16YdXiReipD2\n[best sandwiches]: https://goo.gl/maps/KqtTiujHbAr\n\n## Braga, Portugal (2016-10-23)\n\nAt previous locations, we would usually move around to a different place to work\neach day, but on our first day in Braga we found a restaurant with plenty of\nopen tables, good food, reliable WiFi, and a beautiful view, so we set up a\ntemporary office there for the week.\n\n{: .text-center}\n[![Our office view for the week][bgz-view]{: .shadow}][bgz-view]\n[![Our temporary office][bgz-office]{: .shadow}][bgz-office]\n\nWe were joined by [Filipa], [Kamil], [James L.], [Pablo], [Pedro], and [Tiago]\nfor [Rubyconf Portugal](http://rubyconf.pt/), which had a great lineup of\nspeakers, and a lively karaoke party at the end of the first day.\n\nWe had a great time at the conference feeling like _very_ nerdy rock stars as we\nwere constantly being approached by people recognizing our GitLab swag and\nwanting to talk about the company, open source, and working remotely. Being able\nto tell people about our trip as we were on it and while we had so many\nwonderful colleagues around us was a great testament to the effectiveness and\nappeal of a remote-only company like ours.\n\n{: .text-center}\n[![Our Rubyconf Portugal crew][bgz-group]{: .shadow}][bgz-group]\n_[James L.], [Robert], [Douwe], [Pablo], and [Kamil] at Rubyconf Portugal_\n\nFinally, after hearing about this dish all week, we went to [Taberna\nBelga](https://goo.gl/maps/R1tmPnNiZnp) to try\n[francesinha](https://en.wikipedia.org/wiki/Francesinha), which is a sandwich\nwith multiple kinds of meat, smothered in melted cheese, and served with a\nmountain of french fries, and it's delicious. With a description like that, I\ncan't believe the US hasn't adopted it yet.\n\n## Lisbon, Portugal (2016-10-30)\n\nFrom Braga we took a short train ride south to Lisbon to see [Job] for the\nsingle day he was home between the Amsterdam and New York stops of the [GitLab\nWorld Tour](/blog/world-tour-amplify-your-code/).\n\nDoing the daily [team call] from Job's apartment produced one of my favorite\nmoments of the entire trip, when he silently popped in behind me as I was doing\nmy weekly update. Seriously, I cannot overstate how happy this GIF makes me:\n\n{: .text-center}\n[![Surprise Job][lis-surprise-job]{: .shadow width=\"500px\"}][lis-surprise-job]\n\n[Pedro] was nice enough to play tour guide for us the rest of the week, including\ntaking us to [Pastéis de Belém](https://goo.gl/maps/p4GXMVGt7S82) to satisfy our\nnewfound [pastel de nata](https://en.wikipedia.org/wiki/Pastel_de_nata)\nobsession.\n\n{: .text-center}\n[![Pedro showing us the sights][lis-group]{: .shadow width=\"600px\"}][lis-group]\u003Cbr>\n_[Robert], [Pedro], and [Douwe]_\n\n[team call]: /handbook/communication/#team-call\n\n## Edinburgh, Scotland (2016-11-06)\n\nFrom the lovely climate of Lisbon, where I was comfortable walking around in\nshorts and a T-shirt, we arrived in Edinburgh to temperatures around 7 ℃\n(44 ℉). This was the only stop in our entire trip that was going to be cold, and\nwe weren't prepared for it: the warmest piece of clothing I had with me was the\nGitLab hoodie. Layering would prove to be key!\n\nWe bundled up each morning for the walk to [Sean M.]'s coworking space,\nstopping for coffee along the way, mostly just to have something to keep our\nhands warm. We were joined in Edinburgh by [James E.J.] and [Sean P.] from\nLondon, and [Nick] from York. We had maybe just a bit too much fun having\nthe six of us on our daily team calls, trying to get as many people into the\nbackground of each of our camera shots as we could.\n\n{: .text-center}\n[![Our Edinburgh crew][edi-group]{: .shadow width=\"425px\"}][edi-group]\n[![Our Edinburgh round table][edi-round-table]{: .shadow width=\"425px\"}][edi-round-table]\u003Cbr>\n_Left (clockwise from left): [Douwe], [Sean M.], [James E.J.], [Sean P.],\n[Nick], and [Robert]_\n\nThe bitter cold finally got the best of me towards the end of the week, and I\nended up with a sinus infection for the second time of the whole trip, spending\nthat Friday resting at home and working as I felt up to it (thanks, remote\nwork!). As I was recuperating, Douwe, helpful as ever, sent me a picture of a\ngigantic hamburger-for-four that he, Nick, James, and Sean M were going to eat.\n\n{: .text-center}\n[![Giant Hamburger photo][edi-burger]{: .shadow width=\"500px\"}][edi-burger]\n\nI've been assured they finished it, but have no photographic evidence. Saturday\nmorning, still miserably sick, I let myself get talked into climbing [Arthur's\nSeat](https://en.wikipedia.org/wiki/Arthur%27s_Seat), the city's main mountain.\nDespite Wikipedia describing it as \"relatively easy to climb,\" doing so with a\nsinus infection in the wind and near-freezing temperatures wasn't one of my most\nenjoyable moments of the trip. But the view from the top was worth it:\n\n{: .text-center}\n[![View from the top of Arthur's Seat][edi-arthurs-seat]{: .shadow}][edi-arthurs-seat]\n\n## Tel Aviv, Israel (2016-11-13)\n\nBack to shorts weather! We arrived in Tel Aviv just in time for [Rails\nIsrael](https://railsisrael2016.events.co.il/home). [Yorick] arrived the\nnight before, gave a talk, then jetted off back to the Netherlands the next\nmorning. As with the other conferences we'd been to, it's always heartening to\nsee the enthusiasm people outside the company have for GitLab. Yorick was\nsurrounded after his talk by people asking questions and looking for shirts and\nstickers.\n\nFor the rest of the week we met up with our local [Eliran], mostly working\nfrom [The Streets](https://goo.gl/maps/JUtcXQGmZZK2), which has reliable WiFi,\ngreat food, and is open 24 hours a day -- basically everything we want in a\nworkspace.\n\n## Taipei, Taiwan (2016-11-20)\n\nOur flight to Taipei left us a little jetlagged, so we landed, made it to our\napartment, went to grab lunch around the corner, then slept for about 15\nhours. Our gambit worked, and we woke up early the next morning, fully\nadjusted to the time change and ready to work.\n\nWe met up with our local [Jen-Shin] and spent the week working from the offices\nof [Cardinal Blue](http://cardinalblue.com/). The employees there were fantastic\nhosts, and graciously included us in a delicious Thanksgiving lunch, and in\ntheir \"demo day\" at the end of the week, giving us a chance to talk about GitLab\nand our trip.\n\nWe got to meet some local developers at a dinner, and one of them was nice\nenough to spend his Saturday as our tour guide, taking us to an amazing hiking\ntrail along three waterfalls, and to the [Houtong Cat\nVillage](https://en.wikipedia.org/wiki/Houtong_Cat_Village).\n\n{: .text-center}\n[![Waterfall group photo][tpe-waterfall]{: .shadow}][tpe-waterfall]\u003Cbr>\n_[Robert], [Douwe], [Jen-Shin], and his girlfriend Wen_\n\n## Bali, Indonesia (2016-11-27)\n\nBali was the second location that wasn't part of our original itinerary.\nOriginally we were going to visit [Chris W.] in Melbourne, Australia, but he had\nstarted his own trip while we were on ours, so we crossed paths here.\n\nMaybe not surprisingly, the internet infrastructure isn't great, so working from\nrandom coffeeshops wasn't really an option. Luckily Chris had been there for a\nfew weeks by the time we arrived and had joined a coworking space called\n[Outpost](https://goo.gl/maps/CBRFsKGvitk) that offered day passes (side note:\nnot enough coworking spaces offer day passes. Get it together, people!)\n\nWorking in Bali, from Outpost, was an amazing experience. The place is filled\nwith other remote workers from all over the world. The building is two floors,\nwith the air conditioned lower level enforcing a strict library-like level of\nquiet, while the upper level is open-air and a bit noisier. There were nearby\ncafés where we'd order food (including fresh coconut water served right out\nof the coconut) and it would be delivered to our desks while we worked.\n\nWe did make some time to visit a black sand beach where we destroyed our feet on\nthe coral bed while trying to body surf, then retreated to the pool to relax. We\nalso visited the famous \"monkey village\" which, true to its name, is _filled_\nwith monkeys.\n\n{: .text-center}\n[![Chris meets the locals][dpe-chris]{: .shadow width=\"425px\"}][dpe-chris]\n[![Yep, lots of monkeys][dpe-monkeys]{: .shadow width=\"425px\"}][dpe-monkeys]\n\n## Sydney, Australia (2016-12-05)\n\nAs we started the final week of our trip, it really began to dawn on us that\nthis amazing adventure was almost over. But we still had another week until we'd\nbe on vacation in New Zealand, so it was right back to work.\n\nRight away we found a coffee shop near our apartment called [The\nQ](https://goo.gl/maps/gp2nKD2eYaq) with good food, coffee, and WiFi. I think\nour drive to find a new place to work every day had fully worn out by this\npoint, and we ended up working there all week.\n\nWhen our local [Julie] finally met us there at the end of the week and asked\nwhat we'd seen of Sydney so far, and what we'd been up to every day, I think she\nwas at least a little disappointed in us when we made a feeble \"you're lookin'\nat it\" pantomime.\n\nThat was a common experience throughout the trip. We'd rattle off the list of\ncities we'd been to and were going to, and people would ask what we'd done and\nseen, and we'd have to explain that most of each week was just working, exactly\nas we would at home. We still had to _pay_ for the trip, after all.\n\nWhen you've worked at GitLab for a while, it's easy to take for granted what an\namazing perk this whole \"remote work\" thing is, and how much of a foreign\nconcept it still is to most people. I can't fault anyone for hearing that we\nwere traveling around the world for six months, working when and where we wanted\nto with no oversight, and thinking it was a vacation, but it wasn't. We worked\n10-14 hours Monday through Thursday so that we wouldn't feel guilty taking\nFriday off to do \"touristy\" things. On Saturday we'd try to see more of the\ncity, or catch up on sleep, or just relax after a long week, and on Sunday we'd\nbe at yet another airport to move on to the next city.\n\nThe tourism and traveling were never the main goals of the trip. The true value\nfor us was meeting these people we usually only talk to over video or text,\nseeing where they call home, meeting their friends and families, and spending\ntime with them outside of work, and in that sense, the trip was a resounding\nsuccess.\n\n{: .text-center}\n[![See? We did a little sightseeing!][syd-bridge]{: .shadow}][syd-bridge]\u003Cbr>\n\n## What's next?\n\nWhile our trip is over, other team members have grabbed the baton and are taking\nfull advantage of being able to work from anywhere in the world. [Chris W.] has\nalready been in Indonesia, Taiwan, Hawaii, Guatemala, Mexico City, Dallas, and\nthe Cook Islands, while [Mitchell] has been traveling all over the US, living\nand working in different cities for a month at a time.\n\nIf working while traveling all over the world appeals to you, or if you have no\ninterest in leaving your home, but just like the idea of being able to work when\nand where you want, [check out our open positions](/jobs/)!\n\nThis post is one in a series about this particular trip. Check out\n[part 1](/blog/gitlab-in-action/) and the\n[summary](/blog/around-the-world-in-6-releases/)!\n\n[bgz-group]:        /images/blogimages/gitlab-in-action-part-2/bgz-group.jpg\n[bgz-office]:       /images/blogimages/gitlab-in-action-part-2/bgz-office.jpg\n[bgz-view]:         /images/blogimages/gitlab-in-action-part-2/bgz-view.jpg\n[dpe-chris]:        /images/blogimages/gitlab-in-action-part-2/dpe-chris.jpg\n[dpe-monkeys]:      /images/blogimages/gitlab-in-action-part-2/dpe-monkeys.jpg\n[edi-arthurs-seat]: /images/blogimages/gitlab-in-action-part-2/edi-arthurs-seat.jpg\n[edi-burger]:       /images/blogimages/gitlab-in-action-part-2/edi-burger.jpg\n[edi-group]:        /images/blogimages/gitlab-in-action-part-2/edi-group.jpg\n[edi-round-table]:  /images/blogimages/gitlab-in-action-part-2/edi-round-table.jpg\n[gig-group]:        /images/blogimages/gitlab-in-action-part-2/gig-group.jpg\n[gig-office]:       /images/blogimages/gitlab-in-action-part-2/gig-office.jpg\n[gig-redeemer]:     /images/blogimages/gitlab-in-action-part-2/gig-redeemer.jpg\n[lis-group]:        /images/blogimages/gitlab-in-action-part-2/lis-group.jpg\n[lis-surprise-job]: /images/blogimages/gitlab-in-action-part-2/lis-surprise-job.gif\n[mad-aqueduct]:     /images/blogimages/gitlab-in-action-part-2/mad-aqueduct.jpg\n[mex-pyramid]:      /images/blogimages/gitlab-in-action-part-2/mex-pyramid.jpg\n[mex-rooftop]:      /images/blogimages/gitlab-in-action-part-2/mex-rooftop.jpg\n[nce-beach]:        /images/blogimages/gitlab-in-action-part-2/nce-beach.jpg\n[nce-sunset]:       /images/blogimages/gitlab-in-action-part-2/nce-sunset.jpg\n[sof-group]:        /images/blogimages/gitlab-in-action-part-2/sof-group.jpg\n[syd-bridge]:       /images/blogimages/gitlab-in-action-part-2/syd-bridge.jpg\n[tpe-waterfall]:    /images/blogimages/gitlab-in-action-part-2/tpe-waterfall.jpg\n[waw-statue]:       /images/blogimages/gitlab-in-action-part-2/waw-statue.jpg\n[waw-wifi]:         /images/blogimages/gitlab-in-action-part-2/waw-wifi.png\n\n[Adam]:       /company/team/#niedzielskiadam\n[Axil]:       /company/team/#_axil\n[Chris P.]:   /company/team/#ChrisPeressini\n[Chris W.]:   /company/team/#IsChrisW\n[Dmitriy]:    /company/team/#dzaporozhets\n[Douglas]:    /company/team/#dbalexandre\n[Douwe]:      /company/team/#DouweM\n[Eliran]:     /company/team/#eliran_mesika\n[Emily]:      /company/team/#emilylucie\n[Felipe]:     /company/team/#FelipeArtur\n[Filipa]:     /company/team/#FilipaLacerda\n[Grzegorz]:   /company/team/#GrzegorzBizon\n[Kamil]:      /company/team/#ayufanpl\n[James E.J.]: /company/team/#jamedjo\n[James L.]:   /company/team/#jlopezofficial\n[Jen-Shin]:   /company/team/#godfat-gitlab\n[Job]:        /company/team/#Jobvo\n[John]:       /company/team/#northrup\n[Julie]:      /company/team/#_julie_manalo\n[Marcia]:     /company/team/#XMDRamos\n[Mitchell]:   /company/team/#mitchellbwright\n[Nick]:       /company/team/#lupine_85\n[Pablo]:      /company/team/#psczg\n[Pedro]:      /company/team/#pedromscom\n[Rémy]:       /company/team/#rymai\n[Robert]:     /company/team/#rspeicher\n[Sean M.]:    /company/team/#mcgivernsa\n[Sean P.]:    /company/team/#SeanPackham\n[Tiago]:      /company/team/#tiagobotelho9\n[Tomasz]:     /company/team/#TomaszMaczukin\n[Yorick]:     /company/team/#yorickpeterse\n[Zeger-Jan]:  /company/team/#zjvandeweg\n","company",{"slug":23,"featured":6,"template":24},"gitlab-in-action-part-2","BlogPost","content:en-us:blog:gitlab-in-action-part-2.yml","yaml","Gitlab In Action Part 2","content","en-us/blog/gitlab-in-action-part-2.yml","en-us/blog/gitlab-in-action-part-2","yml",{"_path":33,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"data":35,"_id":444,"_type":26,"title":445,"_source":28,"_file":446,"_stem":447,"_extension":31},"/shared/en-us/main-navigation","en-us",{"logo":36,"freeTrial":41,"sales":46,"login":51,"items":56,"search":385,"minimal":416,"duo":435},{"config":37},{"href":38,"dataGaName":39,"dataGaLocation":40},"/","gitlab logo","header",{"text":42,"config":43},"Get free trial",{"href":44,"dataGaName":45,"dataGaLocation":40},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":47,"config":48},"Talk to sales",{"href":49,"dataGaName":50,"dataGaLocation":40},"/sales/","sales",{"text":52,"config":53},"Sign in",{"href":54,"dataGaName":55,"dataGaLocation":40},"https://gitlab.com/users/sign_in/","sign in",[57,101,197,202,307,366],{"text":58,"config":59,"cards":61,"footer":84},"Platform",{"dataNavLevelOne":60},"platform",[62,68,76],{"title":58,"description":63,"link":64},"The most comprehensive AI-powered DevSecOps Platform",{"text":65,"config":66},"Explore our Platform",{"href":67,"dataGaName":60,"dataGaLocation":40},"/platform/",{"title":69,"description":70,"link":71},"GitLab Duo (AI)","Build software faster with AI at every stage of development",{"text":72,"config":73},"Meet GitLab Duo",{"href":74,"dataGaName":75,"dataGaLocation":40},"/gitlab-duo/","gitlab duo ai",{"title":77,"description":78,"link":79},"Why GitLab","10 reasons why Enterprises choose GitLab",{"text":80,"config":81},"Learn more",{"href":82,"dataGaName":83,"dataGaLocation":40},"/why-gitlab/","why gitlab",{"title":85,"items":86},"Get started with",[87,92,97],{"text":88,"config":89},"Platform Engineering",{"href":90,"dataGaName":91,"dataGaLocation":40},"/solutions/platform-engineering/","platform engineering",{"text":93,"config":94},"Developer Experience",{"href":95,"dataGaName":96,"dataGaLocation":40},"/developer-experience/","Developer experience",{"text":98,"config":99},"MLOps",{"href":100,"dataGaName":98,"dataGaLocation":40},"/topics/devops/the-role-of-ai-in-devops/",{"text":102,"left":103,"config":104,"link":106,"lists":110,"footer":179},"Product",true,{"dataNavLevelOne":105},"solutions",{"text":107,"config":108},"View all Solutions",{"href":109,"dataGaName":105,"dataGaLocation":40},"/solutions/",[111,136,158],{"title":112,"description":113,"link":114,"items":119},"Automation","CI/CD and automation to accelerate deployment",{"config":115},{"icon":116,"href":117,"dataGaName":118,"dataGaLocation":40},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[120,124,128,132],{"text":121,"config":122},"CI/CD",{"href":123,"dataGaLocation":40,"dataGaName":121},"/solutions/continuous-integration/",{"text":125,"config":126},"AI-Assisted Development",{"href":74,"dataGaLocation":40,"dataGaName":127},"AI assisted development",{"text":129,"config":130},"Source Code Management",{"href":131,"dataGaLocation":40,"dataGaName":129},"/solutions/source-code-management/",{"text":133,"config":134},"Automated Software Delivery",{"href":117,"dataGaLocation":40,"dataGaName":135},"Automated software delivery",{"title":137,"description":138,"link":139,"items":144},"Security","Deliver code faster without compromising security",{"config":140},{"href":141,"dataGaName":142,"dataGaLocation":40,"icon":143},"/solutions/security-compliance/","security and compliance","ShieldCheckLight",[145,148,153],{"text":146,"config":147},"Security & Compliance",{"href":141,"dataGaLocation":40,"dataGaName":146},{"text":149,"config":150},"Software Supply Chain Security",{"href":151,"dataGaLocation":40,"dataGaName":152},"/solutions/supply-chain/","Software supply chain security",{"text":154,"config":155},"Compliance & Governance",{"href":156,"dataGaLocation":40,"dataGaName":157},"/solutions/continuous-software-compliance/","Compliance and governance",{"title":159,"link":160,"items":165},"Measurement",{"config":161},{"icon":162,"href":163,"dataGaName":164,"dataGaLocation":40},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[166,170,174],{"text":167,"config":168},"Visibility & Measurement",{"href":163,"dataGaLocation":40,"dataGaName":169},"Visibility and Measurement",{"text":171,"config":172},"Value Stream Management",{"href":173,"dataGaLocation":40,"dataGaName":171},"/solutions/value-stream-management/",{"text":175,"config":176},"Analytics & Insights",{"href":177,"dataGaLocation":40,"dataGaName":178},"/solutions/analytics-and-insights/","Analytics and insights",{"title":180,"items":181},"GitLab for",[182,187,192],{"text":183,"config":184},"Enterprise",{"href":185,"dataGaLocation":40,"dataGaName":186},"/enterprise/","enterprise",{"text":188,"config":189},"Small Business",{"href":190,"dataGaLocation":40,"dataGaName":191},"/small-business/","small business",{"text":193,"config":194},"Public Sector",{"href":195,"dataGaLocation":40,"dataGaName":196},"/solutions/public-sector/","public sector",{"text":198,"config":199},"Pricing",{"href":200,"dataGaName":201,"dataGaLocation":40,"dataNavLevelOne":201},"/pricing/","pricing",{"text":203,"config":204,"link":206,"lists":210,"feature":294},"Resources",{"dataNavLevelOne":205},"resources",{"text":207,"config":208},"View all resources",{"href":209,"dataGaName":205,"dataGaLocation":40},"/resources/",[211,244,266],{"title":212,"items":213},"Getting started",[214,219,224,229,234,239],{"text":215,"config":216},"Install",{"href":217,"dataGaName":218,"dataGaLocation":40},"/install/","install",{"text":220,"config":221},"Quick start guides",{"href":222,"dataGaName":223,"dataGaLocation":40},"/get-started/","quick setup checklists",{"text":225,"config":226},"Learn",{"href":227,"dataGaLocation":40,"dataGaName":228},"https://university.gitlab.com/","learn",{"text":230,"config":231},"Product documentation",{"href":232,"dataGaName":233,"dataGaLocation":40},"https://docs.gitlab.com/","product documentation",{"text":235,"config":236},"Best practice videos",{"href":237,"dataGaName":238,"dataGaLocation":40},"/getting-started-videos/","best practice videos",{"text":240,"config":241},"Integrations",{"href":242,"dataGaName":243,"dataGaLocation":40},"/integrations/","integrations",{"title":245,"items":246},"Discover",[247,252,256,261],{"text":248,"config":249},"Customer success stories",{"href":250,"dataGaName":251,"dataGaLocation":40},"/customers/","customer success stories",{"text":253,"config":254},"Blog",{"href":255,"dataGaName":5,"dataGaLocation":40},"/blog/",{"text":257,"config":258},"Remote",{"href":259,"dataGaName":260,"dataGaLocation":40},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":262,"config":263},"TeamOps",{"href":264,"dataGaName":265,"dataGaLocation":40},"/teamops/","teamops",{"title":267,"items":268},"Connect",[269,274,279,284,289],{"text":270,"config":271},"GitLab Services",{"href":272,"dataGaName":273,"dataGaLocation":40},"/services/","services",{"text":275,"config":276},"Community",{"href":277,"dataGaName":278,"dataGaLocation":40},"/community/","community",{"text":280,"config":281},"Forum",{"href":282,"dataGaName":283,"dataGaLocation":40},"https://forum.gitlab.com/","forum",{"text":285,"config":286},"Events",{"href":287,"dataGaName":288,"dataGaLocation":40},"/events/","events",{"text":290,"config":291},"Partners",{"href":292,"dataGaName":293,"dataGaLocation":40},"/partners/","partners",{"backgroundColor":295,"textColor":296,"text":297,"image":298,"link":302},"#2f2a6b","#fff","Insights for the future of software development",{"altText":299,"config":300},"the source promo card",{"src":301},"/images/navigation/the-source-promo-card.svg",{"text":303,"config":304},"Read the latest",{"href":305,"dataGaName":306,"dataGaLocation":40},"/the-source/","the source",{"text":308,"config":309,"lists":310},"Company",{"dataNavLevelOne":21},[311],{"items":312},[313,318,324,326,331,336,341,346,351,356,361],{"text":314,"config":315},"About",{"href":316,"dataGaName":317,"dataGaLocation":40},"/company/","about",{"text":319,"config":320,"footerGa":323},"Jobs",{"href":321,"dataGaName":322,"dataGaLocation":40},"/jobs/","jobs",{"dataGaName":322},{"text":285,"config":325},{"href":287,"dataGaName":288,"dataGaLocation":40},{"text":327,"config":328},"Leadership",{"href":329,"dataGaName":330,"dataGaLocation":40},"/company/team/e-group/","leadership",{"text":332,"config":333},"Team",{"href":334,"dataGaName":335,"dataGaLocation":40},"/company/team/","team",{"text":337,"config":338},"Handbook",{"href":339,"dataGaName":340,"dataGaLocation":40},"https://handbook.gitlab.com/","handbook",{"text":342,"config":343},"Investor relations",{"href":344,"dataGaName":345,"dataGaLocation":40},"https://ir.gitlab.com/","investor relations",{"text":347,"config":348},"Trust Center",{"href":349,"dataGaName":350,"dataGaLocation":40},"/security/","trust center",{"text":352,"config":353},"AI Transparency Center",{"href":354,"dataGaName":355,"dataGaLocation":40},"/ai-transparency-center/","ai transparency center",{"text":357,"config":358},"Newsletter",{"href":359,"dataGaName":360,"dataGaLocation":40},"/company/contact/","newsletter",{"text":362,"config":363},"Press",{"href":364,"dataGaName":365,"dataGaLocation":40},"/press/","press",{"text":367,"config":368,"lists":369},"Contact us",{"dataNavLevelOne":21},[370],{"items":371},[372,375,380],{"text":47,"config":373},{"href":49,"dataGaName":374,"dataGaLocation":40},"talk to sales",{"text":376,"config":377},"Get help",{"href":378,"dataGaName":379,"dataGaLocation":40},"/support/","get help",{"text":381,"config":382},"Customer portal",{"href":383,"dataGaName":384,"dataGaLocation":40},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":386,"login":387,"suggestions":394},"Close",{"text":388,"link":389},"To search repositories and projects, login to",{"text":390,"config":391},"gitlab.com",{"href":54,"dataGaName":392,"dataGaLocation":393},"search login","search",{"text":395,"default":396},"Suggestions",[397,399,403,405,409,413],{"text":69,"config":398},{"href":74,"dataGaName":69,"dataGaLocation":393},{"text":400,"config":401},"Code Suggestions (AI)",{"href":402,"dataGaName":400,"dataGaLocation":393},"/solutions/code-suggestions/",{"text":121,"config":404},{"href":123,"dataGaName":121,"dataGaLocation":393},{"text":406,"config":407},"GitLab on AWS",{"href":408,"dataGaName":406,"dataGaLocation":393},"/partners/technology-partners/aws/",{"text":410,"config":411},"GitLab on Google Cloud",{"href":412,"dataGaName":410,"dataGaLocation":393},"/partners/technology-partners/google-cloud-platform/",{"text":414,"config":415},"Why GitLab?",{"href":82,"dataGaName":414,"dataGaLocation":393},{"freeTrial":417,"mobileIcon":422,"desktopIcon":427,"secondaryButton":430},{"text":418,"config":419},"Start free trial",{"href":420,"dataGaName":45,"dataGaLocation":421},"https://gitlab.com/-/trials/new/","nav",{"altText":423,"config":424},"Gitlab Icon",{"src":425,"dataGaName":426,"dataGaLocation":421},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":423,"config":428},{"src":429,"dataGaName":426,"dataGaLocation":421},"/images/brand/gitlab-logo-type.svg",{"text":431,"config":432},"Get Started",{"href":433,"dataGaName":434,"dataGaLocation":421},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/compare/gitlab-vs-github/","get started",{"freeTrial":436,"mobileIcon":440,"desktopIcon":442},{"text":437,"config":438},"Learn more about GitLab Duo",{"href":74,"dataGaName":439,"dataGaLocation":421},"gitlab duo",{"altText":423,"config":441},{"src":425,"dataGaName":426,"dataGaLocation":421},{"altText":423,"config":443},{"src":429,"dataGaName":426,"dataGaLocation":421},"content:shared:en-us:main-navigation.yml","Main Navigation","shared/en-us/main-navigation.yml","shared/en-us/main-navigation",{"_path":449,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"title":450,"button":451,"image":455,"config":458,"_id":460,"_type":26,"_source":28,"_file":461,"_stem":462,"_extension":31},"/shared/en-us/banner","is now in public beta!",{"text":80,"config":452},{"href":453,"dataGaName":454,"dataGaLocation":40},"/gitlab-duo/agent-platform/","duo banner",{"config":456},{"src":457},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1753720689/somrf9zaunk0xlt7ne4x.svg",{"layout":459},"release","content:shared:en-us:banner.yml","shared/en-us/banner.yml","shared/en-us/banner",{"_path":464,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"data":465,"_id":670,"_type":26,"title":671,"_source":28,"_file":672,"_stem":673,"_extension":31},"/shared/en-us/main-footer",{"text":466,"source":467,"edit":473,"contribute":478,"config":483,"items":488,"minimal":662},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":468,"config":469},"View page source",{"href":470,"dataGaName":471,"dataGaLocation":472},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":474,"config":475},"Edit this page",{"href":476,"dataGaName":477,"dataGaLocation":472},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":479,"config":480},"Please contribute",{"href":481,"dataGaName":482,"dataGaLocation":472},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":484,"facebook":485,"youtube":486,"linkedin":487},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[489,512,569,598,632],{"title":58,"links":490,"subMenu":495},[491],{"text":492,"config":493},"DevSecOps platform",{"href":67,"dataGaName":494,"dataGaLocation":472},"devsecops platform",[496],{"title":198,"links":497},[498,502,507],{"text":499,"config":500},"View plans",{"href":200,"dataGaName":501,"dataGaLocation":472},"view plans",{"text":503,"config":504},"Why Premium?",{"href":505,"dataGaName":506,"dataGaLocation":472},"/pricing/premium/","why premium",{"text":508,"config":509},"Why Ultimate?",{"href":510,"dataGaName":511,"dataGaLocation":472},"/pricing/ultimate/","why ultimate",{"title":513,"links":514},"Solutions",[515,520,523,525,530,535,539,542,546,551,553,556,559,564],{"text":516,"config":517},"Digital transformation",{"href":518,"dataGaName":519,"dataGaLocation":472},"/topics/digital-transformation/","digital transformation",{"text":146,"config":521},{"href":141,"dataGaName":522,"dataGaLocation":472},"security & compliance",{"text":135,"config":524},{"href":117,"dataGaName":118,"dataGaLocation":472},{"text":526,"config":527},"Agile development",{"href":528,"dataGaName":529,"dataGaLocation":472},"/solutions/agile-delivery/","agile delivery",{"text":531,"config":532},"Cloud transformation",{"href":533,"dataGaName":534,"dataGaLocation":472},"/topics/cloud-native/","cloud transformation",{"text":536,"config":537},"SCM",{"href":131,"dataGaName":538,"dataGaLocation":472},"source code management",{"text":121,"config":540},{"href":123,"dataGaName":541,"dataGaLocation":472},"continuous integration & delivery",{"text":543,"config":544},"Value stream management",{"href":173,"dataGaName":545,"dataGaLocation":472},"value stream management",{"text":547,"config":548},"GitOps",{"href":549,"dataGaName":550,"dataGaLocation":472},"/solutions/gitops/","gitops",{"text":183,"config":552},{"href":185,"dataGaName":186,"dataGaLocation":472},{"text":554,"config":555},"Small business",{"href":190,"dataGaName":191,"dataGaLocation":472},{"text":557,"config":558},"Public sector",{"href":195,"dataGaName":196,"dataGaLocation":472},{"text":560,"config":561},"Education",{"href":562,"dataGaName":563,"dataGaLocation":472},"/solutions/education/","education",{"text":565,"config":566},"Financial services",{"href":567,"dataGaName":568,"dataGaLocation":472},"/solutions/finance/","financial services",{"title":203,"links":570},[571,573,575,577,580,582,584,586,588,590,592,594,596],{"text":215,"config":572},{"href":217,"dataGaName":218,"dataGaLocation":472},{"text":220,"config":574},{"href":222,"dataGaName":223,"dataGaLocation":472},{"text":225,"config":576},{"href":227,"dataGaName":228,"dataGaLocation":472},{"text":230,"config":578},{"href":232,"dataGaName":579,"dataGaLocation":472},"docs",{"text":253,"config":581},{"href":255,"dataGaName":5,"dataGaLocation":472},{"text":248,"config":583},{"href":250,"dataGaName":251,"dataGaLocation":472},{"text":257,"config":585},{"href":259,"dataGaName":260,"dataGaLocation":472},{"text":270,"config":587},{"href":272,"dataGaName":273,"dataGaLocation":472},{"text":262,"config":589},{"href":264,"dataGaName":265,"dataGaLocation":472},{"text":275,"config":591},{"href":277,"dataGaName":278,"dataGaLocation":472},{"text":280,"config":593},{"href":282,"dataGaName":283,"dataGaLocation":472},{"text":285,"config":595},{"href":287,"dataGaName":288,"dataGaLocation":472},{"text":290,"config":597},{"href":292,"dataGaName":293,"dataGaLocation":472},{"title":308,"links":599},[600,602,604,606,608,610,612,616,621,623,625,627],{"text":314,"config":601},{"href":316,"dataGaName":21,"dataGaLocation":472},{"text":319,"config":603},{"href":321,"dataGaName":322,"dataGaLocation":472},{"text":327,"config":605},{"href":329,"dataGaName":330,"dataGaLocation":472},{"text":332,"config":607},{"href":334,"dataGaName":335,"dataGaLocation":472},{"text":337,"config":609},{"href":339,"dataGaName":340,"dataGaLocation":472},{"text":342,"config":611},{"href":344,"dataGaName":345,"dataGaLocation":472},{"text":613,"config":614},"Sustainability",{"href":615,"dataGaName":613,"dataGaLocation":472},"/sustainability/",{"text":617,"config":618},"Diversity, inclusion and belonging (DIB)",{"href":619,"dataGaName":620,"dataGaLocation":472},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":347,"config":622},{"href":349,"dataGaName":350,"dataGaLocation":472},{"text":357,"config":624},{"href":359,"dataGaName":360,"dataGaLocation":472},{"text":362,"config":626},{"href":364,"dataGaName":365,"dataGaLocation":472},{"text":628,"config":629},"Modern Slavery Transparency Statement",{"href":630,"dataGaName":631,"dataGaLocation":472},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":633,"links":634},"Contact Us",[635,638,640,642,647,652,657],{"text":636,"config":637},"Contact an expert",{"href":49,"dataGaName":50,"dataGaLocation":472},{"text":376,"config":639},{"href":378,"dataGaName":379,"dataGaLocation":472},{"text":381,"config":641},{"href":383,"dataGaName":384,"dataGaLocation":472},{"text":643,"config":644},"Status",{"href":645,"dataGaName":646,"dataGaLocation":472},"https://status.gitlab.com/","status",{"text":648,"config":649},"Terms of use",{"href":650,"dataGaName":651,"dataGaLocation":472},"/terms/","terms of use",{"text":653,"config":654},"Privacy statement",{"href":655,"dataGaName":656,"dataGaLocation":472},"/privacy/","privacy statement",{"text":658,"config":659},"Cookie preferences",{"dataGaName":660,"dataGaLocation":472,"id":661,"isOneTrustButton":103},"cookie preferences","ot-sdk-btn",{"items":663},[664,666,668],{"text":648,"config":665},{"href":650,"dataGaName":651,"dataGaLocation":472},{"text":653,"config":667},{"href":655,"dataGaName":656,"dataGaLocation":472},{"text":658,"config":669},{"dataGaName":660,"dataGaLocation":472,"id":661,"isOneTrustButton":103},"content:shared:en-us:main-footer.yml","Main Footer","shared/en-us/main-footer.yml","shared/en-us/main-footer",[675],{"_path":676,"_dir":677,"_draft":6,"_partial":6,"_locale":7,"content":678,"config":681,"_id":683,"_type":26,"title":18,"_source":28,"_file":684,"_stem":685,"_extension":31},"/en-us/blog/authors/robert-speicher","authors",{"name":18,"config":679},{"headshot":7,"ctfId":680},"rspeicher",{"template":682},"BlogAuthor","content:en-us:blog:authors:robert-speicher.yml","en-us/blog/authors/robert-speicher.yml","en-us/blog/authors/robert-speicher",{"_path":687,"_dir":34,"_draft":6,"_partial":6,"_locale":7,"header":688,"eyebrow":689,"blurb":690,"button":691,"secondaryButton":695,"_id":697,"_type":26,"title":698,"_source":28,"_file":699,"_stem":700,"_extension":31},"/shared/en-us/next-steps","Start shipping better software faster","50%+ of the Fortune 100 trust GitLab","See what your team can do with the intelligent\n\n\nDevSecOps platform.\n",{"text":42,"config":692},{"href":693,"dataGaName":45,"dataGaLocation":694},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":47,"config":696},{"href":49,"dataGaName":50,"dataGaLocation":694},"content:shared:en-us:next-steps.yml","Next Steps","shared/en-us/next-steps.yml","shared/en-us/next-steps",1754424495486]