# Companies currently using Go throughout the world

## Africa
  * [Jumia Food](https://food.jumia.com/) - Instant delivery platform.

## Argentina
  * [Mercadolibre](http://www.mercadolibre.com/)

## Azerbaijan
  * [Engossip](https://www.engossip.com/) - Finding partners to practise speaking in English (Globally).
  * [Tural Asgar](https://www.turalasgar.com/) - Tural Asgar's personal blog.

## Australia
  * [Assembly Payments](https://assemblypayments.com/) - [github](https://github.com/AssemblyPayments) - Flexible payment solutions provider
  * [Atlassian](http://atlassian.com/)
  * [AusOcean](http://www.ausocean.org) - Helping our oceans through the use of technology.
  * [BCZ](http://bcz.com/) - Human captcha verification with spam protection.
  * [Buildkite](https://buildkite.com/) - [github](https://github.com/buildkite/agent)
  * [Dgraph Labs](http://dgraph.io) - [github](https://github.com/dgraph-io/dgraph)
  * [OneConfig](http://www.oneconfig.com) - [my.oneconfig.com](https://my.oneconfig.com/devices)
  * [GO1](https://www.go1.com/)
  * [Sajari](https://www.sajari.com) - [github](https://github.com/sajari) [blog](https://www.sajari.com/blog/upgrading-sajari-to-go-15)
  * [SocietyOne](https://www.societyone.com.au/)

## Austria
  * [Digital City Solutions](http://www.digital-city.io/)

## Bangladesh
  * [AppsCode Ltd.](https://appscode.com) (BD subsidiary of AppsCode Inc.) - [facebook](https://www.facebook.com/appscodebd/), [github](https://github.com/appscode), [twitter](https://twitter.com/appscodehq)
  * [Furqan Software](https://furqansoftware.com)
  * [Telenor Health](https://www.mytonic.com)(A health service company) built USSD server with go
  * [Pathao](https://pathao.com)(A ride sharing company) 
  * [GAAN](http://gaan.com.bd)
  * [Restra](https://github.com/restra-social)
  * [ELO](https://elobyte.com) (Embedded Logic Operations)

## Brazil
  * [99 Taxis](http://www.99taxis.com/) - [github](https://github.com/99taxis)
  * [Acesso](http://acesso.io/) - [github](https://github.com/acesso-io)
  * [AStar](http://www.astarlabs.com)  - [github](https://github.com/astarlabs)
  * [Astrolink](http://www.astrolink.com.br) - [github](https://github.com/astrolink)
  * [Beauty Date](http://www.beautydate.com.br)
  * [Benefício Fácil](http://valetransporte.beneficiofacil.com.br/) - [forums](https://forum.golangbridge.org/t/weekly-wiki-wrapup-2015-11-07/1461/2)
  * [Catho](http://www.catho.com.br) - [github](https://github.com/catho)
  * [CloudWalk](https://www.cloudwalk.io) - [github](https://github.com/cloudwalkio) - an open payment platform
  * [Coderockr](http://coderockr.com)
  * [Code:Nation](http://codenation.com.br)
  * [Conductor](http://www.conductor.com.br)
  * [ContaAzul](https://contaazul.com/)
  * [Compufácil](http://compufacil.com.br)
  * [Dafiti](https://www.dafiti.com.br/) - [github](https://github.com/dafiti)
  * [Dito](http://dito.com.br/) - [github](https://github.com/ditointernet/)
  * [Dropadev](http://dropadev.com) 
  * [Easy Carros](https://easycarros.com)
  * [Emprego Ligado](https://empregoligado.com.br/#/)
  * [Eventials](https://www.eventials.com/) - [github](https://github.com/eventials/)
  * [Everymind](http://www.everymind.com.br/)
  * [FourTwo](https://www.fourtwo.com.br/) - [github](https://github.com/F0urTw0/)
  * [GissOnline](http://www.gissonline.com.br)
  * [Globo.com](http://www.globo.com) - [github](https://github.com/globocom) [article](http://www.wired.com/wiredenterprise/2013/03/tsuru)
  * [Hurb](http://www.hurb.com) - [github](https://github.com/HotelUrbano) 
  * [Hubcash](http://www.hubcash.com) - [github](https://github.com/hubcash/)
  * [In Loco](http://www.inlocomedia.com) - [github](https://github.com/In-Loco-Media)
  * [Jexia](http://jexia.com) - [github](https://github.com/jexia-inc)
  * [Jusbrasil](https://www.jusbrasil.com.br) - [github](github.com/jusbrasil)
  * [Koli](https://www.koli.com.br) - [github](https://github.com/koli)
  * [Loggi](https://www.loggi.com) - [github](https://github.com/loggi)
  * [M4U](https://www.m4u.com.br) - [github](https://github.com/Mobile4You)
  * [Magazine Luiza](http://www.magazineluiza.com.br) - [github](https://github.com/luizalabs)
  * [Mendelics](http://www.mendelics.com) - [github](https://github.com/mendelics)
  * [Mercado Livre](http://www.mercadolivre.com.br/) - [github](https://github.com/mercadolibre/)
  * [Moip Pagamentos](https://www.moip.com.br)
  * [MundiPagg](https://www.mundipagg.com) - [github](https://github.com/mundipagg)
  * [Neoway Business Solutions](http://www.neoway.com.br) - [github](https://github.com/NeowayLabs)
  * [Newcore](https://www.newcore.com.br/)
  * [Nic.br](http://www.nic.br) - [github](https://github.com/registrobr)
  * [Nuveo](http://nuveo.com.br/) - [github](https://github.com/nuveo)
  * [Olist](https://olist.com/) - [github](https://github.com/olist)
  * [Open Vista Global](http://openvistaglobal.com.br)
  * [Pagar.me](https://pagar.me)
  * [Pagro](https://www.pagro.com.br)
  * [PagSeguro](https://pagseguro.uol.com.br)
  * [Planrockr](http://planrockr.com)
  * [Polícia Militar do Estado de Minas Gerais](https://www.policiamilitar.mg.gov.br)
  * [Resultados Digitais](http://www.resultadosdigitais.com.br/trabalhe-conosco)
  * [Sage Brasil](http://www.sage.com/pt-br)
  * [ServiceNet](http://www.servicenet.com.br)
  * [SiBBr.gov.br](http://www.sibbr.gov.br) - [github](https://github.com/sibbr)
  * [Stone Pagamentos](http://www.stone.com.br) - [github](https://github.com/stone-payments/)
  * [Studio Sol](https://www.studiosol.com.br) - [github](https://github.com/StudioSol)
  * [Synchro](http://www.synchro.com.br)
  * [TOTVS](http://en.totvs.com/cloud)  
  * [Ulife](http://www.ulife.com.br) - [github](https://github.com/ulifebr)
  * [Universo Online](http://www.uol.com.br) - [github](https://github.com/uol)
  * [VivaReal](http://www.vivareal.com.br) - [github](https://github.com/VivaReal)
  * [Walmart](http://www.walmart.com.br)

## Belarus
  * [Cactussoft](https://cactussoft.biz/) - [github](https://github.com/cactussoft)

## Belgium
  * [Pronovix](http://pronovix.com/) - [github](https://github.com/Pronovix)
  * [Be-Mobile](http://www.be-mobile.com/)
  * [OTA Insight](https://www.otainsight.com/)
  * [Showpad](https://www.showpad.com/)
  * [Elimity](https://elimity.com/)

## Bulgaria
  * [clouWay](http://clouway.com/) - [github](https://github.com/clouway)

## Canada
  * [ActiveState](https://activestate.com) - [blog](https://www.activestate.com/blog/2018/03/reproducible-builds-introducing-predictability-your-pipeline) - [github](https://github.com/ActiveState)
  * [Apex](https://apex.sh/)
  * [ChainSafe Systems](https://chainsafe.io/) - [github](https://github.com/chainsafesystems)
  * [Greenfield Labs / Zenreach](https://zenreach.com) - [jobs](https://www.zenreach.com/careers/)
  * [Go2Mobi](http://www.go2mobi.com/) - [HN](https://news.ycombinator.com/item?id=10660847)
  * [Hootsuite](https://hootsuite.com/)
  * [Index Exchange](https://www.indexexchange.com) - [jobs](https://www.indexexchange.com/careers/)
  * [Klei Entertainment](https://klei.com) - [jobs](https://klei.com/careers)
  * [Koho](https://www.koho.ca/)
  * [League](https://league.com) - [jobs](https://league.com/careers-at-league/)
  * [Manifold](https://manifold.co)
  * [Pressly](https://www.pressly.com/) - [github](https://github.com/goware/httpcoala)
  * [Sendwithus](https://sendwithus.com)
  * [ThinkSquare](https://www.thinksquare.io)
  * [Tulip](https://tulip.com/) - [jobs](https://tulip.com/about/careers/)
  * [Wattpad](https://www.wattpad.com/)
  * [500px](https://500px.com) - [blog](https://developers.500px.com/how-500px-serves-up-over-500tb-of-high-res-photos-fa81a376c594#.35tz2wtg2) - [github](https://github.com/500px)
  * [Qlik](www.qlik.com) - [jobs](https://www.qlik.com/us/company/careers/job-listings?overridedefault=true&department=R%2526D&country=-1)

## Chile
  * [Prey](https://preyproject.com) - [blog](https://preyproject.com/blog) - [github](https://github.com/prey)
  * [Webdox](http://www.webdox.cl)
 
## China
  * [Tencent](https://intl.cloud.tencent.com/)
  * [163yun](http://www.163yun.com/) - [github](https://github.com/163yun) - Netease Public Cloud
  * [BaishanCloud](https://en.baishancloud.com/)
  * [ByteDance](https://www.bytedance.com)
  * [Ciprun](http://www.ciprun.com)
  * [deepin](http://deepin.org/) - [github](https://github.com/linuxdeepin) - a linux distribution aiming to provide an elegant desktop
  * [EasyAR](https://www.easyar.com/)
  * [Feiyu](http://www.feiyu.com/)
  * [FunPlus](http://www.funplus.com/en/) - We Create Leading Innovative and Fun Experiences Worldwide
  * [FutureBots](http://www.futurebots.cn/)
  * [iDCOS](http://www.idcos.com/)
    - [CloudBoot](http://www.idcos.com/products/cloudboot)
  * [Inke](http://inke.com/) - the most popular broadcast platform
  * [Kidswant](https://www.haiziwang.com/)
  * [KLOOK](https://www.klook.com/)
  * [MegaEase](http://www.megaease.com/)
  * [Mili](https://5imili.github.io)
  * [MobiExchanger](http://www.mobiexchanger.com/) - Mobile Internet advertising company
  * [MZD](https://www.xiaoenai.com/) - [github](https://github.com/xiaoenai)
  * [OPPO](https://www.oppo.com)
  * [Qiniu](http://www.qiniu.com/) - [github](https://github.com/qiniu) - Qiniu builds and operates one of the largest public cloud services in China, with millions of code written in Go since 2011.
  * [Rainbond](http://www.rainbond.com) - [github](https://github.com/goodrain/rainbond) - Rainbond is an application centric PaaS
  * [SenseTime](https://www.sensetime.com) - a global leading A.I. company
  * [Teambition](https://www.teambition.com) - [github](https://github.com/teambition)
  * [TiDB](https://www.pingcap.com/en/) - [tweet: Golang in TiDB](https://twitter.com/PingCAP/status/940503487086858240) - [github](https://github.com/pingcap/tidb) - TiDB is a distributed HTAP database compatible with the MySQL protocol
  * [Udesk](https://www.udesk.cn/) - [github](https://github.com/udesk)
  * [XiaoChuan](https://www.ixiaochuan.cn/)
  * [Xiaoying](https://www.xiaoying.com/)
  * [Xunlei](http://www.xunlei.com/)
  * [YeePay](http://www.yeepay.com)
  * [Yeeuu](https://www.yeeuu.com/)
  * [Youmi](https://www.youmi.net/) - a global leading comprehensive mobile internet enterprise

## Croatia
  * [GoodCode](http://goodcode.io/) - [github](https://github.com/dobarkod)
  * [Kraken](https://krakensystems.co/)
  * [minus5](https://minus5.hr/) - [github](https://github.com/minus5)
  * [Nivas](http://www.nivas.hr/) - [github](https://github.com/nivas)
  * [Rentlio](https://rentl.io) - [github](https://github.com/rentlio)

## Colombia
  * [Wawandco](https://wawand.co) - [github](https://github.com/wawandco)

## Denmark
  * [SYBO Games](http://sybogames.com)
  * [Vivino](https://www.vivino.com)

## Estonia
  * [Wallester](https://wallester.eu)

## Finland
  * [Alma Media](https://www.almamedia.fi/en/) - Media/Publishing company. [Twitter](https://twitter.com/almadevelopers) 

## France
  * [Algolia](https://algolia.com)
  * [Batch.com](https://batch.com)
  * [Containo.us](https://containo.us/)
  * [crème de la crème](https://cremedelacreme.io/)
  * [Devatics](https://www.devatics.com)
  * [Digikong](http://digikong.io)
  * [Equisense](http://www.equisense.com/en/)
  * [Eleven Labs](http://eleven-labs.com/)
  * [Fabriks](https://fabriks.net)
  * [Heetch](https://heetch.com) - [github](https://github.com/heetch)
  * [IoThings](https://iothings.fr)
  * [IRI France](http://www.iri-labs.com)
  * [Leboncoin](http://leboncoin.com) - [github](https://github.com/leboncoin) - [blog](https://medium.com/leboncoin-engineering-blog)
  * [LibMed](https://www.libertymedical.fr)
  * [Molotov TV](http://www.molotov.tv)
  * [Objenious](http://www.objenious.com)
  * [ProcessOne](https://www.process-one.net)
  * [PSA](https://www.groupe-psa.com/en) - [github](https://github.com/ekara-platform/) 
  * [Rive](http://app.rive.world)
  * [Sfeir](https://sfeir.com)
  * [Synthesio](https://www.synthesio.com/)
  * [Teads.tv](http://teads.tv/)
  * [TF1](https://www.groupe-tf1.fr/en)
  * [Zenly](https://zen.ly/)

## Germany
  * [Bürkert](https://www.burkert.com/en/)
  * [Doozer](https://www.doozer.de) - [github](https://github.com/doozer-de)
  * [Centrifuge](http://centrifuge.one) - [github](https://github.com/centrifuge)
  * [Delivery Hero](https://www.deliveryhero.com/)
  * [eGym](https://www.egym.de/)
  * [ESONO AG](https://www.esono.de/)
  * [FastBill](https://www.fastbill.com/)
  * [Fraugster](https://fraugster.com/)
  * [Friendsurance](https://www.friendsurance.de/)
  * [HaCon Ingenieurgesellschaft mbH](http://hacon.de/)
  * [HelloFresh](http://www.hellofreshgroup.com/) - [github](https://github.com/hellofresh)
  * [HolidayCheck](https://www.holidaycheck.de/) - [github](https://github.com/holidaycheck) - [Blog]
  * [IDAGIO](https://www.idagio.com/)
  * [JustWatch](https://www.justwatch.com/us) - [HN](https://news.ycombinator.com/item?id=10658330)
  * [loodse](https://loodse.com/) - [github](https://github.com/kubermatic/)
  * [Meplato](https://www.meplato.com/)
  * [Naga Virtual](https://nagavirtual.com/)
  * [Native Instruments](https://www.native-instruments.com/) - [github](https://github.com/nativeinstruments)
  * [OptioPay](https://www.optiopay.com)
  * [PubNative](https://www.pubnative.net/) - [github](https://github.com/pubnative)
  * [simplesurance](https://www.simplesurance.com/)
  * [Sixt](https://www.sixt.com)
  * [Spreadshirt](https://spreadshirt.com)
  * [solarisBank](https://solarisbank.com)
  * [SoundCloud](https://soundcloud.com) - [blog](https://developers.soundcloud.com/blog/go-at-soundcloud)
  * [Streetspotr](http://streetspotr.com) - [blog](https://thcyron.de/2015/go-at-streetspotr.html) - [tweet](https://twitter.com/thcyron/status/372350650580865024)
  * [Tourlane](https://www.tourlane.de)
  * [Weaveworks](http://weave.works)
  * [Zalando SE](https://www.zalando.com) - [blog](https://jobs.zalando.com/tech/blog/)
  * [Onefootball](http://onefootball.com)
  * [Sudokoin](http://sudokoin.com)

## Greece
  * [Beat](https://thebeat.co)
  * [Skroutz](https://www.github.com/skroutz/)

## Hong Kong
  * [PassKit](https://passkit.com/) - [github](https://github.com/PassKit)
  * [Lalamove](https://github.com/lalamove)

## Hungary
  * [Pronovix](http://pronovix.com/) - [github](https://github.com/Pronovix)

## India
  * [AirCTO](https://aircto.com)
  * [AmberStudent](https://amberstudent.com)
  * [Betacraft](http://www.betacraft.co/)
  * [BookMyShow](http://www.bookmyshow.com/)
  * [C42 Engineering](http://c42.in/)
  * [Cralina](http://cralina.com/)
  * [CodeIgnition](http://codeignition.co/) - [twitter](https://twitter.com/AjeyGore/status/667515185486102529)
  * [Company 0](https://www.companyzero.com/)
  * [Crowdfire](https://www.crowdfireapp.com/)
  * [Ducument.com Project Management Tool](https://ducument.com)
  * [CoderCV.com Freelancer Marketplace](https://codercv.com)
  * [Exam attitude](https://examattitude.com/)
  * [Exotel](http://exotel.in) - [website](http://www.gophercon.in/#sponsor)  
  * [Fastah (Blackbuck Computing)](https://angel.co/blackbuck-computing/)
  * [FStack (Golang Consulting)](http://fstack.co/)
  * [GeekTrust](http://geektrust.in/)
  * [Gloop](http://gloop.io/)
  * [Go-jek](https://github.com/gojek-engineering)
  * [Halodoc](https://www.halodoc.com)
  * [Hasura](https://hasura.io)
  * [Instamojo](https://www.instamojo.com/)
  * [Ithaka](http://ithaka.travel)
  * [Jabong](http://www.jabong.com)
  * [Josh Software](http://www.joshsoftware.com/)
  * [JusTickets - built with Go](https://www.justickets.in/cities)
  * [Kayako](http://www.kayako.com/)
  * [LiteBreeze](https://litebreeze.com/)
  * [Mindbowser](http://mindbowser.com/)
  * [Noticeboard](https://www.noticeboard.tech/)
  * [OpenEBS](https://www.openebs.io) - Containerized,opensource storage for containers
  * [Propebbles](http://www.propebbles.com/)
  * [Provlem.com](http://www.provlem.com/)
  * [Qube Cinema](https://www.qubecinema.com/)
  * [Qwentic](http://www.qwentic.com) - A Golang specialized software development company
  * [Qwinix](https://www.qwinixtech.com/)
  * [Rapyuta Robotics](https://www.rapyuta-robotics.com/)
  * [Razorpay](https://razorpay.com/)
  * [Sahaj Software Solutions](http://www.sahajsoft.com/)
  * [Saltside Technologies AB](http://www.saltside.se/)
  * [Siminars](http://siminars.com)
  * [Singulerp](https://singulerp.com)
  * [SocialCops](https://socialcops.com) - [engineering page](https://socialcops.com/careers/engineering/)
  * [SoStronk](https://www.sostronk.com/)
  * [Synerzip](http://synerzip.com/)
  * [Tarkalabs](https://tarkalabs.com/)
  * [Techequity Technologies](http://www.techequity.in/)
  * [ThoughtWorks](https://thoughtworks.com/)
  * [Unbxd](http://unbxd.com)
  * [WazirX](https://wazirx.com/)
  * [Zerodha](https://kite.zerodha.com/)
  * [ZopSmart](https://zopsmart.com/)

## Indonesia
  * [Auditsi Executive Recruitment Services](http://auditsi.com)
  * [Amartha](https://amartha.com/id_ID/)
  * [Bhinneka](http://www.bhinneka.com/)
  * [Bildeco](https://bildeco.com)
  * [Brankas](https://brank.as)
  * [Brodo](http://www.bro.do/)
  * [Bukalapak](http://bukalapak.com)
  * [CICIL.CO.ID](https://cicil.co.id)
  * [Codemi Learning Management System](http://codemi.co.id)
  * [DigiAset](http://www.gadgethariini.com)
  * [EACIIT](http://eaciit.com)
  * [GO-JEK](https://www.go-jek.com)
  * [Graboards](https://graboards.com/)
  * [Guteninc](http://guteninc.com)
  * [Halodoc](https://www.halodoc.com)
  * [HappyFresh Indonesia](https://www.happyfresh.id)
  * [Ice House Corp](https://www.icehousecorp.com)
  * [Kelir.tv](http://kelir.tv)
  * [Korina](http://sewamobilsolo.net)
  * [Kudo](https://kudo.co.id)
  * [kumparan](https://kumparan.com)
  * [Kurio](https://kurio.co.id)
  * [Lazada](http://www.lazada.co.id)
  * [LionJobs](http://lionjobs.com)
  * [Matahari Mall](http://mataharimall.com)
  * [Magicsoft Asia Systems](http://magicsoft-asia.com)
  * [Michael Page Indonesia](http://www.michaelpage.co.id)
  * [Midtrans Payment Gateway](http://midtrans.com)
  * [Nodeflux](https://www.nodeflux.io/)
  * [Pinjam Indonesia - FinTech](https://pinjam.co.id)
  * [Pintu Magang - Jobs for Student](http://pintumagang.jktserver.com)
  * [President University](http://presuniv.com)
  * [Qasico Teknologi Indonesia](https://qasico.com)
  * [Qasir.id](https://www.qasir.id/)
  * [Qiscus](https://www.qiscus.com)
  * [QUPAS.ID](https://www.qupas.id)
  * [RajaMall Energia Syakha Tech](http://www.lokerindonesia.com/teknologi-informasi/programmer/lowongan-programmer-di-bandung.html)
  * [Raydar](http://goraydar.com)
  * [RebelWorks](http://www.rebelworks.io)
  * [RedtreeMobile](http://redtreemobile.com)
  * [Reservasi](https://www.reservasi.com/id-id)
  * [Rimbun Job Agency](http://www.rimbunjob.com)
  * [Ruangguru](https://ruangguru.com)
  * [Sale Stock](https://www.salestockindonesia.com)
  * [SAP Indonesia](http://go.sap.com/corporate/en/company/office-locations/indonesia.html)
  * [Surabaya CCTV](http://surabayacctv.co.id/jual-cctv-surabaya-paket-cctv-murah)
  * [Tokopedia](http://tokopedia.com)
  * [Valutac](https://valutac.com)

## Iraq
  * [eSITE](https://esite-iq.com/)

## Iran
  * [Clickyab](https://clickyab.com/) - Clickyab is diffrent online advertising & digital media agency
  * [Sazito](https://sazito.com/) - Sazito is multi-functional tools to build and manage your online store.
  * [AlAlam](http://en.alalam.ir/) -- AlAlam news network TV channel
  * [Aparat](http://www.aparat.com) -- Most popular video sharing platform in Iran
  * [Asan Pardakht](http://asanpardakht.ir/) -- Pay Smarter. Pay Simpler. Pay Anywhere!
  * [SabzCity](https://sabz.city/) - [github](https://github.com/sabzcity/)
  * [Bahamta](https://bahamta.com/) - Fintech company.
  * [5th dimension](https://5thd-co.com/) - Advertising Agency.
  * [Telmaperfume](https://telmaperfume.com/) - Promotional Gifts.
  * [Snapp](https://snapp.ir/) - Snapp is a web and mobile ride-hailing platform in Iran
  * [Parsaspace](https://parsaspace.com) - Parsaspace is an iranian storage as a service

## Ireland
  * [EXADS](http://exads.com/)
  * [Intercom](http://intercom.io/)
  * [Teamwork](http://teamwork.com/) - [blog](http://engineroom.teamwork.com/our-future-stack-or-why-we-love-knockout-coffeescript-redis-and-go/)
 
## Israel
  * [353Solutions](http://353solutions.com) 
  * [Aqua Security](https://www.aquasec.com)
  * [BigPanda](http://bigpanda.io) 
  * [Bringg](https://www.bringg.com)  
  * [Dragontail Systems](https://www.dragontailsystems.com) 
  * [Domino's Pizza](https://dominos.co.il) 
  * [Elastifile Ltd](http://elastifile.com) 
  * [EyeSight](http://eyesight-tech.com) 
  * [Fiverr](http://Fiverr.com/) 
  * [Gett](http://gett.com/) 
  * [ironSource](http://www.ironsrc.com) 
  * [Jewish Interactive](http://jewishinteractive.org) 
  * [JFrog](https://www.jfrog.com/) - [github](https://github.com/JFrogDev/jfrog-cli-go)
  * [Firedome](https://firedome.io/) - [github](https://github.com/firedome)
  * [JobJob](http://JobJobapp.com)
  * [Make My Day](https://www.makemydayapp.com/)
  * [Medtronic](https://www.medtronic.com/)
  * [Mathematic.ai](https://www.mathematic.ai)
  * [Nexar](https://www.getnexar.com/)
  * [Panoply](https://panoply.io­)
  * [PushApps](https://www.pushapps.mobi/) 
  * [Protected Media](http://www.protected.media) 
  * [Rimoto](http://www.rimoto.com/)
  * [Rounds](http://www.rounds.com)
  * [SentinelOne](https://www.sentinelone.com/)
  * [Stratoscale](http://www.stratoscale.com) - [github](https://github.com/Stratoscale)
  * [StreamRail](https://www.streamrail.com/)
  * [Surge Media](https://surge.media)
  * [TechedUp](http://www.techedup.net) - ([Blog](http://blog.techedup.net/category/go/)) 
  * [Twistlock](https://www.twistlock.com)
  * [uponit](https://uponit.com/) 
  * [Yodas](https://yodas.com) 
  * [Yotpo](https://www.yotpo.com/) 

## Italy
  * [Oxequa](http://www.oxequa.com) - ([Realize](https://github.com/oxequa/realize), [Grace](https://github.com/oxequa/grace))
  * [Qurami](http://www.qurami.com) - [github](https://github.com/qurami)
  * [Sorint.lab](https://www.sorint.it) - [github](https://github.com/sorintlab)
  * [Trenìt!](http://www.trenit.info) - ([FB post](https://www.facebook.com/trenitapp/posts/907728379283787)) -- Most popular mobile app for Italian trains schedules
  * [Develer](https://www.develer.com)
  * [Qlik](www.qlik.com) - [jobs](https://www.qlik.com/us/company/careers/job-listings?overridedefault=true&department=R%2526D&country=-1)

## Japan
  * [3-shake, Inc.](https://www.3-shake.com/)
  * [aptpod, Inc.](https://www.aptpod.co.jp/)
  * [AtCoder, Inc.](https://atcoder.jp/)
  * [Bengo4.com,Inc.](https://corporate.bengo4.com/)
      * [CloudSign](https://www.cloudsign.jp/)
  * [Clover Lab.,inc.](https://cloverlab.jp/)
  * [Cookpad Inc.](https://info.cookpad.com/en)
  * [CyberAgent, Inc.](https://www.cyberagent.co.jp/)
    * [ecs-formation](https://github.com/openfresh/ecs-formation) - ecs-formation is a tool for defining several Docker continers and clusters on Amazon EC2 Container Service(ECS)
    * [plasma](https://github.com/openfresh/plasma) - plasma is event push middleware by using gRPC stream
  * [Cybozu](https://www.cybozu.com) - [github](https://github.com/cybozu-go)
  * [DeNA Co.,Ltd.](https://dena.com)
  * [enish,Inc.](https://www.enish.jp/)
  * [eureka](https://eure.jp)
  * [feedtailor](https://www.feedtailor.jp/)
  * [Fenrir](http://www.fenrir-inc.com/jp/)
  * [Flatt](https://flatt.tv/) - Live Commerce Application
  * [FreakOut, Inc.](https://fout.co.jp/)
  * [freee K.K.](https://corp.freee.co.jp/)
  * [Fringe81](http://www.fringe81.com/)
  * [Fusic Co., Ltd.](https://fusic.co.jp)
  * [Future Architect](http://www.future.co.jp/architect/)
      * [Vuls](https://github.com/future-architect/vuls) - Vulnerability scanner for Linux/FreeBSD, agentless, written in Go
  * [Fringe81 Co., Ltd.](http://www.fringe81.com/)
  * [GMO Pepabo, Inc.](https://pepabo.com/)
  * [Groovenauts, Inc.](https://www.groovenauts.jp/)
  * [Gunosy Inc.](https://gunosy.co.jp/)
  * [Gurunavi, Inc.](https://gurunavi.com/)
  * [Hatena](http://hatenacorp.jp/)
      * [Mackerel](https://mackerel.io) - Monitoring as a Service ([github](https://github.com/mackerelio))
  * [HDE Inc](https://www.hde.co.jp/en/)
  * [HEARTBEATS](https://heartbeats.jp/)
      * [happo-agent](https://github.com/heartbeatsjp/happo-agent) - Yet another Nagios nrpe
  * [HiCustomer](https://hicustomer.jp/) - a Customer Success management platform
  * [Internet Initiative Japan Inc.](http://www.iij.ad.jp)
  * [istyle Inc.](http://www.istyle.co.jp/)
  * [JX Press Corporation](https://jxpress.net/)
  * [Kanmu, Inc.](https://kanmu.co.jp/)
  * [KAYAC Inc.](https://www.kayac.com/) - [github](https://github.com/kayac)
  * [KLab Inc.](http://www.klab.com/jp/english/)
  * [KRPEO](https://rikitake.jp/)
  * [Kyash Inc](https://kyash.co/en/)
  * [LINE](https://linecorp.com/)
  * [Livesense Inc.](https://livesense.co.jp/) - [github](https://github.com/livesense-inc)
  * [LOB, Inc.](https://www.lob-inc.com/) - [github](https://github.com/lob-inc)
  * [M3](https://corporate.m3.com/)
  * [mediba](http://www.mediba.jp/)
  * [Mercari](https://www.mercari.com/jp/about/)
      * [Gaurun](https://github.com/mercari/gaurun) - Gaurun is the general push notification server in Go
  * [Miniascape Co., Ltd.](https://www.miniascape.co.jp/)
  * [Mobingi](https://mobingi.com/) - [github](https://github.com/mobingi)
  * [Mokelab](https://mokelab.com) - [github](https://github.com/mokelab-go/)
  * [Momentum Inc.](https://www.m0mentum.co.jp/)
  * [Nagisa Inc.](https://nagisa-inc.jp/)
  * [Next Currency Inc.](https://n-currency.com/)
  * [Nikkei Inc.](https://hack.nikkei.com/blog)
  * [Nulab](https://nulab-inc.com/) - [github](https://github.com/nulab)
  * [OPTiM Corporation](https://www.optim.co.jp/)
  * [Origami Inc.](https://origami.com/)
  * [PERSOL CAREER CO., LTD.](https://www.persol-career.co.jp/)
  * [PicApp Inc.](http://picappinc.jp/)
  * [pixiv Inc.](https://www.pixiv.co.jp/)
  * [Preferred Networks](https://www.preferred-networks.jp/en/)
      * [SensorBee](https://github.com/sensorbee) - Lightweight streaming processing engine for IoT
  * [Repro Inc.](https://repro.io/)
  * [redish Inc.](https://www.redish.jp) - Message delivery service on AWS Lambda
  * [SAKURA Internet Inc.](https://www.sakura.ad.jp/) - [github](https://github.com/sakura-internet)
      * [Arukas](https://arukas.io/en/) - [github](https://github.com/arukasio) - Docker Container Hosting
      * [Web Accelerator](http://cloud.sakura.ad.jp/specification/web-accelerator/)
      * [sakura.io](https://sakura.io/)
  * [SMART EDUCATION, Ltd.](http://smarteducation.jp/)
      * [KitS](http://kdkits.jp/)
      * [Artpop!](http://kdkits.jp/materials/)
  * [Souzoh](https://www.souzoh.com/jp/)
      * [Mercari Atte](https://www.mercariatte.com/jp/)
  * [Speee, Inc.](https://speee.jp/)
  * [TOPGATE](https://www.topgate.co.jp/)
  * [Toreta, Inc.](https://corp.toreta.in/)
  * [VELTRA Corporation](https://www.veltra.com/)
  * [VOYAGE GROUP](https://voyagegroup.com/)
  * [VRize, Inc.](https://vrize.io/)
  * [Wantedly, Inc.](https://wantedlyinc.com/ja)
      * [github](https://github.com/wantedly?language=go)
  * [XSHELL](https://xshell.io)
      * [Isaax](https://isaax.io)
      * [IoTit Flashing tool](http://iotit.isaax.io)

## Kazakhstan
  * Kolesa LLC - microservices for classified ads websites and mobile applications backend ([Kolesa](http://kolesa.kz), [Krisha](https://krisha.kz), [Market](https://market.kz))

## Korea (South)
  * [Digitalidea](http://www.digitalidea.co.kr) - inhouse tool for VFX
  * [Quicket](http://m.bunjang.co.kr) - Image Proxy, Push, Messenger
  * [Wemakeprice](http://www.wemakeprice.com) - CRM Solution
  * [FlyHigh](http://flyhigh-x.com/en/) - Information Security Solution
  * [KonaCard](http://www.konacard.co.kr/) - Payment Service
  * [NHN Entertainment](http://nhnent.com/)
    * [Toast Cloud](https://toast.com/) - Public Cloud Service
  * [ComTrue Technologies](http://comtrue.com/) - Network Packet Analyzer

## Lithuania
  * [DATA-DOG](https://github.com/DATA-DOG)

## Malaysia
  * [MHub](https://mhub.my)
  * [Revenue Monster](https://revenuemonster.my/)

## Mexico
  * [Segundamano](https://www.segundamano.mx/)
  
## Middle East 
  * [aspros Wallet](http://asprosinstant.money/) ([Video](https://www.youtube.com/watch?v=BmsQYZpz1Ws))

## Moldova
  * [Emphatic Spark](http://emphaticspark.com/)

## Morocco
  * [Avito](http://www.avito.ma)

## Netherlands
  * [BloomReach](https://www.bloomreach.com)
  * [bol.com](https://www.bol.com)
  * [booking.com](https://www.booking.com)
  * [Datumprikker.nl](https://datumprikker.nl/)
  * [Housing Anywhere](https://housinganywhere.com/)
  * [Jexia](http://jexia.com) - [github](https://github.com/jexia-inc)
  * [Kickstox](https://kickstox.com)
  * [Kopano](https://kopano.com) - [github](https://github.com/Kopano-dev)
  * [localsensor](http://localsensor.com/)
  * [MessageBird](https://www.messagebird.com/) - [github](https://github.com/messagebird)
  * [Nerdalize](https://www.nerdalize.com/) - [github](https://github.com/nerdalize)
  * [Nextail](https://www.nextail.nl/)
  * [NPO](https://www.npostart.nl/) - [github](https://github.com/npo-topspin)
  * [Pocket Media](http://www.pocketmedia.mobi/) - [company website](http://www.pocketmedia.mobi/), [github](github.com/pocketbrain/)
  * [Poki](http://poki.com/) - [company website](http://poki.com/company/), [github](https://github.com/pokibv)
  * [Sentia](https://sentia.com/nl/)
  * [The Things Network](http://thethingsnetwork.org/) - [github](https://github.com/TheThingsNetwork/)
  * [Ultraware](https://www.ultraware.nl)
  * [Wercker](http://wercker.com) - [github](https://github.com/wercker)
  * [Xebia](https://xebia.com/) - [github](https://github.com/xebia)
  * [Yonego](https://www.bambelo.com/)

## New Zealand
  * [Hapara](http://hapara.com) - [github](https://github.com/Hapara)
  * [Vend](http://www.vendhq.com) - [github](https://github.com/vend)
  * [Weta Digital](http://www.wetafx.co.nz) - [Slides](https://talks.godoc.org/github.com/justinfx/demos/go_at_weta/go_at_weta.slide)
  * [Spalk](http://spalk.co)
  * [Movio](https://movio.co) - [article](https://movio.co/en/blog/migrate-Scala-to-Go/)
  * [Aeroqual](https://www.aeroqual.com/)

## Philippines
  * [EngageSPARK](https://www.engagespark.com)

## Poland
 * [OLX](https://www.joinolx.com/) - [blog](https://tech.olx.com/)
 * [allegro](http://allegro.pl) - [blog](http://allegro.tech) - biggest polish e-commerce platform
 * [hostit.pl](https://hostit.pl) - [blog](https://hostit.pl/blog/375,go-gadget-go.html)
 * [Brainhub](https://brainhub.eu) - [blog](https://brainhub.eu/golang-software-development.html)
 * [CloudThing](https://www.cloudthing.io) - IoT cloud platform
 * [HolidayCheck](https://www.holidaycheck.pl/)
 * [Husar Labs](http://www.husarlabs.com) - software development company
 * [RnDity](https://rndity.com) - software and hardware development company
 * [Grey Wizard](https://greywizard.com) - cybersecurity company
 * [podioom](http://podioom.net) - With podioom we create bonds that support those who care and who want to stay in shape! 
 * [beFOGG](http://befogg.mobi) - platform that will take tourism to the next level
 * [Miquido](https://www.miquido.com) - Mobile-first software development company
 * [Brainly](https://brainly.co/) - [blog](https://medium.com/engineering-brainly)

## Portugal
  * [OLX](https://www.joinolx.com/) - [blog](https://tech.olx.com/)
  * [AppGeneration](http://appgeneration.com/)
  * [Lmit](http://lmit.pt/)
  * [Uniplaces](http://uniplaces.com/)
  * [Bright Pixel](https://brpx.com/)
  * [Observador](https://observador.pt/)

## Romania
* [Trisoft](https://www.wearetrisoft.com) - software development company with offices in San Francisco and Romania
* [JobDone](https://jobdone.net) - Freelancer Marketplace
* [CrowdStrike](https://www.crowdstrike.com/) - software development company with offices in US, UK, Romania and Australia

## Russia
* [2GIS](http://info.2gis.com/)
* [Acronis](http://acronis.com)
* [avito.ru](http://avito.ru/)
* [Gett](http://gett.com/)
* [ITooLabs](http://itoolabs.com)
* [Izvestia](https://iz.ru)
* [OZON.ru](http://ozon.ru/)
* [PostmanQ](https://github.com/actionpay/postmanq) - High performance Mail Transfer Agent (MTA)
* [ThetaPad](http://thetapad.com/)
* [Tochka](http://tochka.com/)

## Saudi Arabia
* [Tamkeen Technologies](http://tamkeentech.sa)

## Singapore
* [OKiT247](https://okit247.com) - Frontend analytics and web content delivery.
* [Rate](https://rate.com.sg)
* [Singapore Power](https://www.spgroup.com.sg/)
* [Eatigo](https://www.eatigo.com/)

## Slovenia
  * [Visionect d.o.o.](http://www.visionect.com)
  * [Niteo](https://www.niteo.co)

## South Africa
  * [Luno](http://www.luno.com) - [github](https://github.com/luno)

## Southeast Asia
  * [Dwarves Foundation](https://dwarves.foundation) - [github](https://github.com/dwarvesf)
  * [engageSPARK](https://www.engagespark.com/) - [HN](https://news.ycombinator.com/item?id=10655752)
  * [Grab](http://www.grab.com/)
  * [HealthCo](http://healthcobot.com)
  * [Pocketmath](http://www.pocketmath.com/)
  * [Tokopedia](https://www.tokopedia.com/)
  * [TablePlus](https://https://tableplus.io/)

## Spain
  * [alea soluciones](https://github.com/aleasoluciones/)
  * [Bugfender](https://bugfender.com/)
  * [Cabify](https://cabify.com/) - [github](https://github.com/cabify/), [twitter](https://twitter.com/cabifydev)
  * [jobandtalent](https://www.jobandtalent.com)
  * [Ximdex](http://www.ximdex.com)
  * [puzzlopia](http://www.puzzlopia.com) - [github](https://github.com/puzzlopia/puzzle-solvers)
  * [binomads](https://binomads.com/)
  * [Schibsted](http://www.schibsted.com/)
  * [Mediasmart.io](http://mediasmart.io) - [twitter](https://twitter.com/mediasmart_mb) 
  * [Mavrix](https://mavrix.es) - [github](https://github.com/betit/orion-go-sdk)  
  * [Typeform](https://www.typeform.com/)
  * [source{d}](https://sourced.tech)

## Sweden
  * [Kiliaro](https://kiliaro.com/)
  * [Min Doktor](https://mindoktor.se/)
  * [Slagkryssaren](https://slagkryssaren.com/)
  * [TV4](http://www.tv4.se/) - [blog](http://http.tv4.se/2014/12/04/tv4-tech-peter-hellberg-kristian-saebdal-tv4-vara-topplistor-i-go/)
  * [Greta](https://greta.io/)
  * [Booli](https://www.booli.se/)
  * [Studentlitteratur](https://www.studentlitteratur.se)
  * [Qlik](www.qlik.com) - [jobs](https://www.qlik.com/us/company/careers/job-listings?overridedefault=true&department=R%2526D&country=-1)

## Switzerland
  * [AgFlow SA](http://www.agflow.com/)
  * [Centralway Numbrs AG](https://www.centralway.com/uk/)
  * [HolidayCheck](https://www.holidaycheck.ch/)
  * [Perron2 GmbH](http://www.perron2.ch)
  * [Proton Technologies AG](https://protonmail.com)
  * [Ricardo](https://www.ricardo.ch/)

## Taiwan
  * [QNAP Systems, Inc.](https://www.qnap.com)
  * [ProphetStor Data Services, Inc.](http://www.prophetstor.com)
  
## Thailand
  * [Appsynth Asia](https://appsynth.net/)
  * [AIS](http://www.ais.co.th/)  
  * [Computerlogy](https://computerlogy.com/)
  * [Drone Academy Thailand](http://www.dronecademy.org)
  * [DTAC](http://www.dtac.co.th/)
  * [Donuts Bangkok](http://www.donuts-bkk.com/)
  * [Fastwork](https://fastwork.co/)
  * [Insightera](https://www.insightera.co.th/)
  * [KBTG](http://www.kbtg.tech)
  * [ODDS](http://fb.me/oddsteam)
  * [Paybox](https://www.paybox.work)
  * [Sellsuki](https://www.sellsuki.co.th/)
  * [SPRINT3r](http://sprint3r.com/)
  * [ThothZocial](https://thothzocial.com/)
  * [Tencent Thailand](https://developers.tencent.co.th/)
  * [TRUE](http://truemoveh.truecorp.co.th/)
  * [Zanroo](https://www.zanroo.com/)

## Turkey
  * [Admongrel](http://www.admongrel.com/)
  * [Insider](http://useinsider.com/)
  * [Mentornity, Inc.](https://mentornity.com/) - Backend API
  * [Mos Teknoloji](https://www.mosteknoloji.com)
  * [Peak Games](https://www.peakgames.net/) - [github](https://github.com/peakgames) - Processing billions of events per day.
  * [put.io](https://www.put.io/) - [github](https://github.com/putdotio)

## Ukraine
  * [Agilites](https://agilites.com)
  * [ElifTech](http://www.eliftech.com)
  * [iLighten](https://ilighten.com/)
  * [QArea](https://qarea.com/)
  * [Diligences](https://diligences.com/)

## United Kingdom
  * [Acuris](https://www.acuris.com/)
  * [Admongrel](http://www.admongrel.com/)
  * [A1comms](https://www.a1comms.com/)
  * [Badoo](https://badoo.com) - [github](https://github.com/badoo/thunder)
  * [BBC](http://www.bbc.co.uk) - [public source](https://github.com/bbc?utf8=%E2%9C%93&q=&type=&language=go)
  * [BBC Worldwide](http://www.bbcworldwide.com/) - [source](http://www.quora.com/Go-programming-language/Is-Google-Go-ready-for-production-use/answer/Kunal-Anand)
  * [Bedful Booking System](https://bedful.com)  
  * [Belua](https://www.belua.com)
  * [Bubble Student](https://www.bubblestudent.co.uk)
  * [Deliveroo](https://www.deliveroo.co.uk) - [github](https://github.com/deliveroo/)
  * [Fortifi](http://fortifi.uk) - [github](https://github.com/fortifi)
  * [Awesome Shit You Can Buy](https://awesomeshityoucanbuy.com/)
  * [Freelance Marketplace](https://www.fieldengineer.com/)
  * [GOV.UK](http://www.gov.uk) - [slides](https://speakerdeck.com/nickstenning/http-building-a-new-router-for-gov-dot-uk) [github](https://github.com/alphagov/router) [blog](https://gdstechnology.blog.gov.uk/2013/12/05/building-a-new-router-for-gov-uk/)
  * [Geckoboard](https://www.geckoboard.com)
  * [graze](https://www.graze.com) - [github](https://github.com/graze)
  * [HM Treasury, UK.gov](http://hm-treasury.gov.uk/) - [github](https://github.com/guidance-guarantee-programme/)
  * [Intern Avenue](https://www.internavenue.com/)
  * [iZettle](https://www.izettle.com/gb) - [github](https://github.com/iZettle/)
  * [Micro](https://micro.mu/) - [github](https://github.com/micro)
  * [Monzo](https://monzo.com/) - [github](https://github.com/monzo), [blog](https://monzo.com/blog/2016/09/19/building-a-modern-bank-backend/)
  * [New Bamboo](http://www.new-bamboo.co.uk) - [blog](http://blog.new-bamboo.co.uk/2013/09/17/micro-network-daemons-in-go)
  * [Pusher](https://pusher.com) - [github](https://github.com/pusher) [blog](https://blog.pusher.com)
  * [Ravelin](https://www.ravelin.com/)
  * [Resource Guru](https://resourceguruapp.com) - [blog](https://blog.resourceguruapp.com)
  * [Restorepoint](http://www.restorepoint.com)
  * [Ryanair](http://www.ryanair.com) - [source](https://youtu.be/CWCHT3GClMM?t=15m)
  * [Sainsbury's](http://www.sainsburys.co.uk)
  * [Sky Betting & Gaming](https://www.skybetcareers.com)
  * [Songkick](https://www.songkick.com)
  * [StorageOS](http://storageos.com)
  * [Tyk](https://tyk.io) - [github](https://github.com/TykTechnologies/tyk)
  * [Utility Warehouse](https://careers.utilitywarehouse.co.uk/departments/technology)
  * [Weaveworks](http://weave.works)
  * [XTX Markets](http://www.xtxmarkets.com) - [github](https://github.com/XTXMarkets)
  * [YouView TV Ltd](http://www.youview.com)
  * [Ernest.io](http://ernest.io)
  * [Landoop](https://www.landoop.com/) - [github](https://github.com/landoop), [blog](https://www.landoop.com/blog/)
  * [Gram Games](http://gram.gs/) 90% of the backend and internal tools implemented with Go. Using it in production since 2015.
   * [WhatsOnChain](https://whatsonchain.com) - Backend APIs for Blockchain Explorer 

## United States

  * [Google](http://google.com/) - the core Go team work at Google. Most uses of Go at Google are confidential.
    * [Kubernetes](http://kubernetes.io/)
    * The [YouTube](http://youtube.com/) team have released their [MySQL scaling infrastructure](http://vitess.io/) as open source software [1](https://www.youtube.com/watch?v=5yDO-tmIoXY), [2](https://www.youtube.com/watch?v=qATTTSg6zXk), [3](https://www.youtube.com/watch?v=midJ6b1LkA0&sns=gp)
    * dl.google.com is written in Go: [mailing list discussion](https://groups.google.com/forum/?fromgroups=#!topic/golang-nuts/BNUNbKSypE0) / [OSCON slides](http://talks.golang.org/2013/oscon-dl.slide#1)
    * [Flywheel: Google's Data Compression Proxy for the Mobile Web](http://research.google.com/pubs/pub43447.html), [blog post on the rewrite](http://matt-welsh.blogspot.co.uk/2013/08/rewriting-large-production-system-in-go.html)
    * [A lot of scripts that earlier were written in Sawzall](http://www.unofficialgoogledatascience.com/2015/12/replacing-sawzall-case-study-in-domain.html)
    * [Seesaw load balancer](http://google-opensource.blogspot.nl/2016/01/seesaw-scalable-and-robust-load.html) -[github repo](https://github.com/google/seesaw)
    * Other known uses include
      * the [Turkey Doodle (2011)](http://blog.golang.org/2011/12/from-zero-to-go-launching-on-google.html),
      * the [Santa Tracker (2012)](https://www.youtube.com/watch?v=fc25ihfXhbg),
      * [writing map/reduce jobs](http://simplystatistics.org/2013/02/15/interview-with-nick-chamandy-statistician-at-google/),
      * [Jam With Chrome](http://www.jamwithchrome.com/technology),
      * the [CubeSlam Chrome Experiment](https://code.google.com/p/cubeslam/),
      * Google Helpouts,
      * [Doorman, Global Distributed Client Side Rate Limiting](https://github.com/youtube/doorman)
      * and the [pprof command line tool](https://codereview.appspot.com/153750043/).
  * [6Wunderkinder](http://www.6wunderkinder.com/) - [video](https://www.youtube.com/watch?v=sVpMc0hwqps)
  * [99designs](http://www.99designs.com) - [golang-nuts](https://groups.google.com/d/msg/golang-nuts/eeAmkzaRt-w/rmxBZszJUCcJ)
  * [Abot](https://www.itsabot.org) - [github](https://github.com/itsabot/abot)
  * [ActiveState](http://www.activestate.com) - [github](https://github.com/activestate)
  * [Acquia](https://www.acquia.com) - [blog](https://dev.acquia.com/blog/open-sourcing-statsgod-a-statsd-implementation-in-go/16/11/2015/8171)
  * [adeven](http://www.adeven.com) - [blog](http://big-elephants.com/2012-10/deploying-go-with-capistrano/)
  * [Adobe](https://www.adobe.com/)
  * [Adori Labs](http://www.adorilabs.com/)
  * [AeroFS](https://www.aerofs.com/) - [github](https://github.com/aerofs/gockerize), [blog](https://www.aerofs.com/blog/introducing-gockerize/)
  * [Aerospike](http://www.aerospike.com) - [blog](https://groups.google.com/d/msg/golang-nuts/GA902tHnjdM/ARRaBS2g4zEJ)
  * [AgileBits — 1Password for Teams](https://teams.1password.com)
  * [Airbrake](http://airbrake.io/)
  * [Airware](http://airware.com/) - [eng blog](https://makers.airware.com), [github](https://github.com/airware)
  * [Apcera ](http://www.apcera.com) - [blog](http://gigaom.com/2012/09/13/will-go-be-the-new-go-to-programming-language/)
  * [Apeiron Data Systems](http://apeirondata.com/)
  * [Appbase](https://appbase.io/)
  * [Append Media](https://append.media/)
  * [Appoxy](http://appoxy.com) - [twitter](https://twitter.com/appoxy)
  * [AppsCode Inc.](https://appscode.com) - [github](https://github.com/appscode), [twitter](https://twitter.com/appscodehq)
  * [Arista Networks](http://www.arista.com/en/) - [twitter](https://twitter.com/tsunanet/status/665998079724621825)
  * [Ardan Studios/Labs](http://www.ardanstudios.com) - [twitter](https://twitter.com/ardanlab)
  * [Aruba Networks](http://www.arubanetworks.com/) - [golang-nuts](https://groups.google.com/d/msg/golang-nuts/M2koiSyoF6E/8rUujT5RCwEJ)
  * [Ascendant Compliance Manager](https://www.ascendantcompliancemanager.com/) - Batch process millions of security trades per day.
  * [Atatus](http://www.atatus.com/) - [blog](http://www.atatus.com/blog/golang-auto-build-versioning/)
  * [Avocet](http://avocet.io/) - [blog](http://blog.avocet.io/from-0-to-6-2-billion-requests/)
  * [Awake Networks](http://www.awakenetworks.com)
  * [Axioms](http://axioms.io) - [blog](http://axioms.io/zen/2014-11-06-swift-go/)
  * [Basecamp](https://basecamp.com/) - [blog](https://signalvnoise.com/posts/3897-go-at-basecamp)
  * [Beachfront Media](http://www.beachfrontmedia.com) [article](http://arstechnica.com/information-technology/2013/05/my-favorite-programming-language-googles-go-has-some-coders-raving/)
  * [Beam](https://beam.pro) - [github](https://github.com/WatchBeam)
  * [Beehively](http://beehively.com) - [Presentation](https://speakerdeck.com/nexneo/joy-of-single-purpose-services-in-go)
  * [Beme](http://beme.com) - [job post](http://beme.com/jobs.html#product-engineer)
  * [Betable](https://betable.com) - [talk #1](http://rcrowley.org/talks/surge-2013.html), [talk #2](http://rcrowley.org/talks/strange-loop-2013.html)
  * [Benzinga](https://www.benzinga.com) - [pro](https://pro.benzinga.com/), [jobs](http://jobs.benzinga.com/)
  * [BigCommerce](https://www.bigcommerce.com/) - [blog](http://www.bigeng.io/what-keeps-us-going/), [github](https://github.com/bigcommerce)
  * [Bitbucket](https://bitbucket.org/) - [source](http://www.reddit.com/r/golang/comments/1pjn0k/bitbucket_hiccup_reveals_go_usage/)
  * [bitly](http://bit.ly) - [github](https://github.com/bitly/nsq) [blog](http://word.bitly.com/post/33232969144/nsq)
  * [Blippar](http://blippar.com)
  * [Blink Analytics](https://blinkanalytics.com) - [github](https://github.com/blinkanalytics)
  * [Bolt](http://bolt.com)
  * [bol.com](http://bol.com) - [github](https://github.com/emicklei/go-restful) [blog](http://ernestmicklei.com/2015/07/04/testing-your-rest-api-in-go-with-forest/)
  * [botvs.com](http://botvs.com)
  * [Booking.com](http://booking.com) - [source](http://www.techworld.com/careers/perl-developers-dispel-doubts-about-codes-longevity-3599357/)
  * [Bread Finance](https://www.getbread.com)
  * [Bridgevine](https://bridgevine.com/) - [github](https://github.com/Bridgevine)
  * [Brightcove](https://brightcove.com)
  * [Bringhub](https://bringhub.com)
  * [BuySellAds](https://buysellads.com)
  * [BuzzFeed](https://buzzfeed.com) - [talk](https://go-talks.appspot.com/github.com/jonmorehouse/gateway-golang-talk/main.slide#1)
  * [Byndr](http://www.byndr.org)
  * [ByteGain](https://bytegain.com/)
  * [Canonical](http://canonical.com/) - [source](http://www.youtube.com/watch?v=7QDVRowyUQA), [email](https://groups.google.com/d/msg/golang-nuts/jLnMsUbYwrQ/isfMUvBOkEIJ)
  * [Capital One](https://www.capitalone.com) - [blog](https://medium.com/capital-one-tech/tagged/golang)
  * [Caprinova](http://caprinova.com)
  * [Carmatec](https://www.carmatec.com)
  * [Carbon Games](http://carbongames.com/) - [source](http://carbongames.com/opensource.html#the_go_programming_language_bsd)
  * [Channel](https://www.getchannel.co)
  * [Chatlio](https://chatlio.com)
  * [CircleCI](https://circleci.com)
  * [Circonus](https://www.circonus.com)
  * [Clearblade](http://clearblade.com/) - [github](https://github.com/ClearBlade/Go-SDK)
  * [Clever](https://clever.com/) - [github](https://github.com/clever) [blog](http://engineering.clever.com/)
  * [ClickAway](https://clickaway.com/)
  * [CloudFlare](http://www.cloudflare.com/) - [blog](http://blog.cloudflare.com/go-at-cloudflare) [article](http://arstechnica.com/information-technology/2013/02/cloudflare-blows-hole-in-laws-of-web-physics-with-go-and-railgun/)
  * [Cloud Foundry](http://www.cloudfoundry.com) - [blog](http://pivotallabs.com/a-rubyist-learning-go-a-basic-go-program/) [github](https://github.com/cloudfoundry)
  * [CloudWalk](https://www.cloudwalk.io) - [github](https://github.com/cloudwalkio/)
  * [clypd](http://www.clypd.com) - [blog](http://www.clypd.com/getting-to-go/)
  * [Cockroach Labs](http://www.cockroachlabs.com/) - [blog](http://www.cockroachlabs.com/blog/why-go-was-the-right-choice-for-cockroachdb/) [github](https://github.com/cockroachdb/)
  * [CodeShip](https://codeship.com) - [blog](https://blog.codeship.com/creating-fakes-in-go-with-channels/)
  * [Comcast](http://corporate.comcast.com/) - [github](https://github.com/comcast)
  * [Conformal Systems](http://www.conformal.com) - [github](https://github.com/conformal)
  * [Copper.IO](http://copper.io) - [blog](https://blog.copper.io/building-a-scaleable-app-that-can-actually-scale/)
  * [CoreOS](https://coreos.com/) - [github](https://github.com/coreos/), [blog](http://blog.gopheracademy.com/birthday-bash-2014/go-at-coreos/)
  * [Couchbase](http://www.couchbase.com/) - [github](https://github.com/couchbaselabs)
  * [Crashlytics](http://try.crashlytics.com/) - [tweet](https://twitter.com/brianhatfield/status/360866306276327424)
  * [Crowdstrike](http://www.crowdstrike.com/) - [blog](http://jimplush.com/talk/2015/12/19/moving-a-team-from-scala-to-golang/)
  * [Cupcake](https://cupcake.io) - [tweet](https://jonathan.cupcake.is/posts/QweOXcW6rmbdj16aXlEdNA) [github](https://github.com/cupcake)
  * [CURT Manufacturing](https://www.curtmfg.com) - [github](https://github.com/curt-labs/)
  * [Cycle.io](https://cycle.io)
  * [CustomerIO](http://www.customer.io) - [tweet](https://twitter.com/jrallison/status/365560974251540481)
  * [Dailymotion](http://www.dailymotion.com) - [github](https://github.com/dailymotion), [blog](http://engineering.dailymotion.com/our-way-to-go/)
  * [Datadog](https://www.datadoghq.com) - [blog](http://blog.gopheracademy.com/birthday-bash-2014/go-at-datadog/)
  * [Datascale](http://datascale.io)
  * [DeferPanic](https://deferpanic.com) - [github](https://github.com/deferpanic)
  * [Dell](https://www.dell.com)
  * [Diggernaut](https://www.diggernaut.com) - Data mining and extraction service
  * [DigitalOcean](http://www.digitalocean.com/) - [blog](http://www.digitalocean.com/company/blog/get-your-development-team-started-with-go/)
  * [Disqus](http://disqus.com/) - [blog](http://blog.disqus.com/post/51155103801/trying-out-this-go-thing), [blog](http://highscalability.com/blog/2014/5/7/update-on-disqus-its-still-about-realtime-but-go-demolishes.html)
  * [DNSimple](https://dnsimple.com/) - [blog](http://blog.dnsimple.com/a-golang-redirection-service/)
  * [Docker](https://www.docker.com/) - [docker](https://github.com/docker/docker) [slides]
  * [domainr](http://domai.nr/) - [tweet](https://twitter.com/rr/status/368988340848037889)
  * [Dollar Shave Club](https://www.dollarshaveclub.com) - [blog](http://engineering.dollarshaveclub.com/)
  * [DotDashPay](https://www.dotdashpay.com) - [github](https://github.com/dotdashpay)
  * [DoubleDutch](https://www.doubledutch.me)
(http://www.slideshare.net/jpetazzo/docker-and-go-why-did-we-decide-to-write-docker-in-go)
  * [Doximity](https://www.doximity.com)
  * [DramaFever](https://www.dramafever.com/) - [github](https://github.com/DramaFever)
  * [DreamList](https://www.dreamlist.com/)
  * [drone.io](http://drone.io) - [post](https://groups.google.com/d/msg/golang-nuts/Lo7KP3rWP3o/GvNju75FgPIJ) [github](https://github.com/drone)
  * [Dropbox](http://www.dropbox.com) - [blog](https://tech.dropbox.com/2014/07/open-sourcing-our-go-libraries/), [github](https://github.com/dropbox/godropbox)
  * [eBay](http://www.ebay.com/) - [github](https://github.com/eBay/fabio), [meetup](http://www.meetup.com/golang-amsterdam/events/222001978/)
  * [Economist](http://www.economist.com/) - [github](https://github.com/EconomistDigitalSolutions/ramlapi)
  * [Embedly](http://embed.ly) - [blog](http://blog.embed.ly/post/45149878472/167857590)
  * [EMC Cloud Services](http://www.emc.com/campaign/emc-cloud-services/index.htm) - [tweet](https://twitter.com/chadlung/status/622118049500364800)
  * [Enova](https://www.enova.com) - [github](https://github.com/enova?language=go), [blog](https://innovation.enova.com/tag/go/)
  * [ERNIT](http://www.ernit.com) - [Medium](https://medium.com/@amandeep.midha/case-for-kubernetes-go-google-appengine-gae-rabbitmq-and-hitting-the-glass-ceiling-51d6a60d307d)
  * [EverQuote](https://www.everquote.com)
  * [Everything.me](http://everything.me) - [blog](http://geeks.everything.me/2015/05/03/adventures-with-disque/)
  * [Facebook](https://facebook.com) - [github](https://github.com/facebookgo/), [blog](http://blog.parse.com/learn/how-we-moved-our-api-from-ruby-to-go-and-saved-our-sanity/)
  * [FieldEngineer](https://www.fieldengineer.com/)
  * [Factom](http://www.factom.org) - [github](https://github.com/FactomProject)
  * [Fastly](http://www.fastly.com) - [blog](https://www.fastly.com/blog), [twitter](https://twitter.com/fastly) - The only real-time content delivery network designed to seamlessly integrate with your development stack.
  * [Foize](https://www.foize.com) - [github](https://github.com/foize/)
  * [Flipboard](http://www.flipboard.com)  - [source (job post)](https://news.ycombinator.com/item?id=6140956)
  * [FLXOne](http://flxone.com) - [blog](https://medium.com/@robin.verlangen/billions-of-request-per-day-meet-go-1-5-362bfefa0911)
  * [Fullstory](https://www.fullstory.com/) - [blog](http://blog.gopheracademy.com/birthday-bash-2014/go-at-fullstory/)
  * [Gaikai (Playstation NOW)](https://gaikai.com/)
  * [Gatherer](http://gathererapp.com/) - [twitter](https://twitter.com/codepushr/status/653880049343537153)
  * [Gamegos](https://github.com/gamegos)
  * [Gametime](https://gametime.co/)
  * [Gemfury](https://gemfury.com)
  * [General Electric Software](https://www.gesoftware.com/) - [tweet](https://twitter.com/cemezberci/status/623179382505390080), [jobs](https://xjobs.brassring.com/tgwebhost/jobdetails.aspx?partnerid=54&siteid=5346&jobid=1254417)
  * [Gengo](http://www.gengo.com)  - [blog](http://blog.gengo.com/go-gengo/)
  * [Getty Images](http://www.gettyimages.com) - [tweet](https://twitter.com/TrevorBramble/status/441372661336113152) [tweet](https://twitter.com/ickypop/status/441470245492908032)
  * [GitHub](https://github.com) - [blog post](http://techno-weenie.net/2013/11/2/key-value-logs-in-go/)
  * [GitLab](https://about.gitlab.com/) - [gitaly](https://gitlab.com/gitlab-org/gitaly/)
  * [GlobalSign](https://www.globalsign.com)
  * [Granify](http://granify.com/) - [blog](http://leonsbox.com/blog/2013/06/04/improving-testing-by-using-real-traffic-from-production/)
  * [GrayMeta, Inc.](https://www.graymeta.com)
  * [Grovo](https://grovo.com)
  * [Hailo](http://www.hailocab.com) - [slides](https://speakerdeck.com/mattheath/youre-good-to-go)
  * [Happy Pancake](http://www.happypancake.com/) - [blog](https://abdullin.com/happypancake/)
  * [HashiCorp](https://hashicorp.com/) - [github](https://github.com/hashicorp)
  * [HER](https://weareher.com/)
  * [Heroku](http://heroku.com/) - [Go blog post](http://blog.golang.org/2011/04/go-at-heroku.html), [news](http://www.theregister.co.uk/2011/05/05/google_go/)
  * [Home24](http://www.home24.de) - [github](https://github.com/home24)
  * [Honeywell](https://www.honeywell.com)
  * [Hooklift](https://github.com/hooklift) - [github](https://github.com/hooklift)
  * [HyperDev](https://hyperdev.com/) - [blog post](http://stackshare.io/hyperdev/the-hyperdev-tech-stack-powering-over-1m-containers)
  * [IBM](http://www.ibm.com/) - [Clampify](https://developer.ibm.com/open/clampify/), [i18n4go](https://developer.ibm.com/open/i18n4go/), [libsecurity](https://developer.ibm.com/open/libsecurity/)
  * [Igneous](http://www.igneous.io/)
  * [Imagefly](http://imagefly.io/)
  * [Imgix](https://www.imgix.com) - [StackShare](http://stackshare.io/imgix/how-imgix-built-a-stack-to-serve-100-000-images-per-second), [job posting](https://www.imgix.com/jobs#752d046c-c795-47ea-9f90-117d761a557e)
  * [Imgur](http://imgur.com/) - [github](https://github.com/Imgur/mandible/)
  * [InfluxData](https://influxdata.com/) - [blog](http://blog.gopheracademy.com/birthday-bash-2014/why-influxdb-uses-go/) [github](https://github.com/influxdata)
  * [Instela](https://tr.instela.com)
  * [Intel](http://www.intel.com) - [snap telemetry framework](https://github.com/intelsdi-x/snap), [ciao cloud orchestration](https://github.com/01org/ciao), [Clear Containers](https://github.com/clearcontainers)
  * [identakid.com](http://identakid.com)
  * [Invoiced](https://invoiced.com)
  * [Ionic Security](https://www.ionic.com/about/careers)
  * [ISDC - InsideSales.com](http://insidesales.com)
  * [Iron.io](http://iron.io/) - [source](http://www.youtube.com/watch?v=kKQLhGZVN4A) [blog:"30 servers to 2"](http://blog.iron.io/2013/03/how-we-went-from-30-servers-to-2-go.html) [blog:"2 years of production Go"](http://blog.iron.io/2013/08/go-after-2-years-in-production.html)
  * [Jack Henry and Associates](https://www.jackhenry.com/pages/default.aspx)
  * [JelloLabs](http://www.jellolabs.com)
  * [Jenkins X](https://jenkins-x.io) - [GitHub](https://github.com/jenkins-x)
  * [Jimdo](http://www.jimdo.com) - [tweet](https://twitter.com/mlafeldt/status/351661314017476608) [github](https://github.com/jimdo)
  * [Jive](https://jive.com) - [github](https://github.com/jive)
  * [Jive Software](http://www.jivesoftware.com) - [github](https://github.com/jivesoftware)
  * [Kairos](https://www.kairos.com)
  * [Karma](http://www.yourkarma.com) - [blog](https://blog.yourkarma.com/how-we-use-mqtt-at-karma)
  * [Kayako](http://www.kayako.com/) - [twitter](https://twitter.com/freatbeater/status/654689942254161920)
  * [Keybase.io](http://keybase.io) - [github](https://github.com/keybase)
  * [Kingsoft](http://www.kingsoft.com/) - [github](https://github.com/flike/kingshard)
  * [Kochava](https://www.kochava.com/)
  * [Koding](http://www.koding.com) - [quora](http://www.quora.com/Node-js/Why-did-Koding-switch-from-Node-js-to-Go)
  * [LabStack](http://labstack.com/) - [github](https://github.com/labstack/echo), [website](http://echo.labstack.com/)
  * [Laserlike](https://www.laserlike.com/)
  * [LaunchDarkly](https://launchdarkly.com/) - [github](https://github.com/launchdarkly/), [golang sdk](https://github.com/launchdarkly/go-client)
  * [Lean Labs](http://kanban.leanlabs.io/) - [git release](https://gitlab.com/leanlabsio/kanban/blob/master/CHANGELOG.md#130-2015-09-06)
  * [Liftoff](https://liftoff.io/company/engineering/)
  * [Lincoln Loop](http://lincolnloop.com/) - [blog (as part of https://botbot.me/ , #go-nuts IRC logging)](http://lincolnloop.com/blog/djangonaut-building-webapp-go-gorilla/)
  * [Linc Global](https://www.letslinc.com/)
  * [Lob](https://www.lob.com)
  * [LocalRaces](https://localraces.com/) - [website](https://localraces.com/about)
  * [LogPacker](https://logpacker.com/) - [website](https://logpacker.com)
  * [Lovoo](https://lovoo.com/) - [github](https://github.com/lovoo)
  * [Luckie &amp; Company](http://luckie.com)
  * [Lyft](http://lyft.com) - [github](https://github.com/lyft)
  * [Magento](http://magento.com)
  * [Magic Leap](http://www.magicleap.com) - [twitter](https://twitter.com/MrGossett/status/724926614065270786)
  * [Maldive](https://www.maldive.com)
  * [MalwareBytes](https://www.malwarebytes.org/) - [blog](http://marcio.io/2015/07/handling-1-million-requests-per-minute-with-golang/)
  * [Mattel](http://play.mattel.com/) - Mattel uses go on its backend for APIs and IOT data processing.
  * [Mattermost](https://about.mattermost.com/) - [github](https://github.com/mattermost) - Open source, private cloud Slack-alternative
  * [MaxCDN](http://www.maxcdn.com) - [blog](http://blog.maxcdn.com/learned-stop-worrying-love-logs/)
  * [Medium](https://medium.com) - [blog](https://medium.com/medium-eng/how-medium-goes-social-b7dbefa6d413)
  * [MediaMath](https://mediamath.com) - [github](https://github.com/MediaMath/grim), [youtube](https://youtu.be/eDRoaxXerOM)
  * [Mesosphere](https://mesosphere.com) - [github](https://github.com/mesosphere)
  * [Meta Search](https://www.meta.sc/) - [twitter](https://twitter.com/AndyHaskell2013/status/651528742330855424)
  * [Microcosm](http://www.microco.sm) - [slides](https://speakerdeck.com/mattcottingham/building-an-api-with-go-at-microco-dot-sm)
  * [Mindbowser](http://mindbowser.com/)
  * [Minio](https://minio.io/) - [github](https://github.com/minio/minio) [blog](https://github.com/minio/minio)- Object Storage compatible with Amazon S3 API
  * [Modcloth](http://www.modcloth.com) - [github](https://github.com/modcloth-labs)
  * [Moovweb](http://www.moovweb.com) - [github](https://github.com/moovweb) [source](https://groups.google.com/forum/#!topic/golang-nuts/MeiTNnGhLg8/discussion)
  * [MongoDB](http://www.mongodb.com) - [blog](http://blog.mongodb.org/post/51643994762/go-agent-go)
  * [Monsoon Commerce](https://www.monsooncommerce.com/) - [blog](https://www.monsooncommerce.com/2015/10/open-source-go-uptime/)
  * [Mozilla](https://go.mozilla.org) - [github](https://github.com/search?o=desc&q=org%3Amozilla+org%3Amozilla-services+org%3Amozilla-it+language%3AGo&ref=searchresults&s=stars&type=Repositories&utf8=%E2%9C%93)
  * [MROffice](http://mroffice.org/) - [source](http://www.youtube.com/watch?v=7QDVRowyUQA)
  * [Namely](http://www.namely.com/) - [blog](https://medium.com/namely-labs/postgres-in-go-cf794adc4c52)
  * [Netflix](http://www.netflix.com) - [github](https://github.com/Netflix/rend), [blog](http://techblog.netflix.com/2016/05/application-data-caching-using-ssds.html)
  * [New Relic](http://newrelic.com/) - [HN](https://news.ycombinator.com/item?id=10661031)
  * [New York Times](http://nyt.com/) - [source](http://open.blogs.nytimes.com/2014/07/10/emr-streaming-in-go/?_php=true&_type=blogs&_r=0)
  * [Newspaper](http://www.newspaper.io/) - [source](https://angel.co/newspaperio)
  * [Next Jump](https://www.nextjump.com) - Next Jump the company that manages the perks platform [Perks at Work](https://www.perksatwork.com) uses Go in it's backend. 
  * [NextUser](https://www.nextuser.com)
  * [Nexway](http://www.nexway.com)
  * [Ninchat](https://ninchat.com/) - [twitter](https://twitter.com/timosavola/status/555993344766390272)
  * [Novartis](http://www.novartis.com) - [g+ post](https://plus.google.com/114945221884326152379/posts/d1SVaqkRyTL)
  * [Nutanix](http://www.nutanix.com)
  * [Odoscope](http://www.odoscope.com) - [twitter](https://twitter.com/odoscope/status/642383738249322496), [job](http://www.odoscope.com/career-at-odoscope/developer-vacancy/)
  * [Ooyala](http://www.ooyala.com/) - [github](https://github.com/ooyala/)
  * [Opendoor](https://www.opendoor.com/) - [HN](https://news.ycombinator.com/item?id=10657348)
  * [OpenShift](https://www.openshift.com/) - [blog](http://blog.gopheracademy.com/birthday-bash-2014/openshift-3-old-dogs-new-tricks/)
  * [Oracle](https://www.oracle.com/us/assets/wercker-faq-3680198.pdf) - Wercker is a Automation platform for Kubernetes & Microservice Deployments
  * [orijtech](https://orijtech.com/) - [github](https://github.com/orijtech/)
  * [Ottemo](https://ottemo.io) - Managed Commerce Platform written in golang
  * [Outdoorsy](https://www.outdoorsy.co)
  * [OvrClk](https://www.ovrclk.com/) - [github](https://github.com/ovrclk)
  * [Oyster Books](https://www.oysterbooks.com/) - [blog](http://engineering.oysterbooks.com/post/79458380259/resizing-images-on-the-fly-with-go)
  * [Pachyderm.io](http://www.pachyderm.io/) - [github](https://github.com/pachyderm/pachyderm)
  * [Packet](https://www.packet.net/) - [github](https://github.com/packethost)
  * [Pagoda Box/Nanopack](https://pagodabox.io/) - [github](https://github.com/nanopack/yoke)
  * [Pantheon](https://pantheon.io/) - [blog](https://pantheon.io/blog/improving-performance-and-reliability-edge-golang-overhaul)
  * [Parse.com](http://www.parse.com/) - [blog](http://blog.parse.com/learn/how-we-moved-our-api-from-ruby-to-go-and-saved-our-sanity/)
  * [Partner Fusion](http://www.partnerfusion.com)
  * [Percona](http://www.percona.com) - [blog](http://www.mysqlperformanceblog.com/2014/05/14/tips-benchmarking-go-mysql/)
  * [pet.io](http://pet.io)
  * [Pilosa](https://www.pilosa.com/) - [github](https://github.com/pilosa)
  * [Pinshape](https://pinshape.com/) - [job](https://twitter.com/MusicHackFest/status/639219466262454272)
  * [Pinterest](https://www.pinterest.com/) - [github](https://github.com/pinterest)
  * [Pivotal](https://pivotal.io/) - [Cloud Foundry](https://github.com/cloudfoundry) and [Cloud Foundry Incubator](https://github.com/cloudfoundry-incubator)
  * [PocketList](http://pocketlist.co)
  * [Points.com](https://points.com/) - Points Loyalty Wallet 
  * [pool.ntp.org](http://pool.ntp.org/) - [blog](http://news.ntppool.org/2012/10/new-dns-server.html) [status](http://dns-status.ntppool.org/)
  * [Poptip](https://poptip.com/) - [blog](http://thenewstack.io/from-node-js-to-go-why-one-startup-made-the-switch/), [job posting](https://groups.google.com/d/msg/golang-nuts/cQ0uuLCcQQQ/4nNm_YYh_l4J)
  * [Pressly](https://www.pressly.com) - [github](https://github.com/pressly), [product](https://www.pressly.com)
  * [Procore](https://www.procore.com/) - [github](https://github.com/procore/pgnetdetective)
  * [Pronovix](http://pronovix.com) - [blog](http://pronovix.com/blog/walkhub-walkthrough-microservice-written-go-no-longer-drupal-distribution), [github](https://github.com/Pronovix), [product](http://pronovix.com/walkhub)
  * [Public Good Corp](https://publicgood.com/) - [meetup](http://www.meetup.com/ChicaGoLang/events/222224696/)
  * [Rackspace](http://www.rackspace.com) - [github](https://github.com/rackspace/rack)
  * [RailsCarma](https://www.railscarma.com)
  * [Raintank](http://www.raintank.io/) - [blog](https://blog.raintank.io/where-and-why-we-use-go/)
  * [Rakuten Marketing](http://marketing.rakuten.com)
  * [Recime](https://recime.io)
  * [RapidLoop](https://www.rapidloop.com/) - [product](https://www.opsdash.com/)
  * [Rawstream ](http://www.rawstream.com) - [tweets](https://twitter.com/brianazzopardi/status/387920069327872000)
  * [Raygun](http://raygun.io) - [blog](http://raygun.io/blog/2013/11/5-reasons-go-will-kick-ass-in-your-next-project/)
  * [Reddit](https://reddit.com) - [AMA post](https://www.reddit.com/r/sysadmin/comments/3h0o7u/were_reddits_ops_team_aua/cu3f88n/)
  * [Red Ventures](https://www.redventures.com)
  * [ReelDx](https://reeldx.com/) - [medvid.io](https://medvid.io), [twitter](https://twitter.com/andrewreeldx)
  * [Remember The Milk](https://www.rememberthemilk.com/)
  * [Remind101](https://www.remind.com/) - [github](https://github.com/remind101/empire), [blog](http://engineering.remind.com/introducing-empire/)
  * [Rendered :Text](http://renderedtext.com/) - [blog](http://renderedtext.com/blog/2013/08/28/building-our-first-app-in-go/)
  * [Replicated](https://www.replicated.com)
  * [Repustate](http://www.repustate.com)
  * [ReverbNation](https://www.reverbnation.com)
  * [ReviewTrackers](http://www.reviewtrackers.com/) - [HN](https://news.ycombinator.com/item?id=10660780)
  * [Revolving Cow](https://revolvingcow.com)
  * [Riot Games](http://www.riotgames.com/) - [talk](https://www.youtube.com/watch?v=2s5l9ErNL3s)
  * [Room for More](https://roomformore.com)
  * [Rounds](http://www.rounds.com) - [blog](http://www.rounds.com/blog/joys-affordable-concurrency/)
  * [RueBaRue](http://www.ruebarue.com)
  * [Runscope](http://www.runscope.com) - [blog](http://blog.runscope.com/posts/go-at-runscope)
  * [Sagan Systems](http://sagansystems.com/) - [HN](https://news.ycombinator.com/item?id=10659830)
  * [Secret](https://www.secret.ly/) - [blog](https://medium.com/secret-den/12ab82fda29f)
  * [SecurityScorecard](https://securityscorecard.com/) - [github](https://github.com/securityscorecard) [blog](http://blog.securityscorecard.com)
  * [Segment](https://segment.com/) - [github](https://github.com/segmentio?query=go)
  * [SendGrid](http://sendgrid.comel of the Go Gopher mascot. We ￼ Go.
/) - [blog](http://sendgrid.com/blog/convince-company-go-golang/)
  * [SendHub](https://www.sendhub.com/) - [source (shipbuilder PaaS)](http://shipbuilder.io/)
  * [SessionM](https://www.sessionm.com) - [HN](https://news.ycombinator.com/item?id=10659861)
  * [Shopify](http://www.shopify.com) [tweet](https://twitter.com/burkelibbey/status/312328030670450688)
  * [Showyou](http://www.showyou.com) [source](https://plus.google.com/101522949595361604155/posts/8n4CSePMwgV)
  * [Shutterfly](http://www.shutterfly.com)
  * [SignalFx](https://signalfx.com/) - [blog](http://blog.signalfx.com/why-the-signalfx-metric-proxy-is-written-in-go)
  * [Slack](https://slack.com) - [blog](https://slack.engineering/scaling-slacks-job-queue-687222e9d100)
  * [SlingTV](https://www.sling.com)
  * [SmartyStreets](http://smartystreets.com) - [github](https://github.com/smartystreets), [blog](https://smartystreets.com/blog)
  * [SmugMug](http://www.smugmug.com/) - [blog](http://sorcery.smugmug.com/2012/04/06/deriving-json-types-in-go/)
  * [Skimlinks](http://www.skimlinks.com) [blog](https://speakerdeck.com/rjohnsondev/go-at-skimlinks)
  * [Social Blade](https://socialblade.com)
  * [Sorint.US](https://www.sorintlab.com) - [github](https://github.com/sorintlab)
  * [SoundCloud](http://soundcloud.com) - [blog](http://backstage.soundcloud.com/2012/07/go-at-soundcloud/)
  * [SoundHound](http://soundhound.com)
  * [Sourcegraph](https://sourcegraph.com) - [talk](http://www.youtube.com/watch?v=-DpKaoPz8l8), [github](https://github.com/sourcegraph)
  * [source{d}](https://sourced.tech) - [github](https://github.com/src-d), [twitter](https://twitter.com/sourcedtech), [blog](https://blog.sourced.tech)
  * [Space Monkey](http://www.spacemonkey.com) - [blog](https://www.spacemonkey.com/blog/posts/go-space-monkey)
  * [SpaceX](http://www.spacex.com/) - [reddit](https://www.reddit.com/r/golang/comments/3pu3nl/spacex_is_using_go_for_its_telemetry_system/)
  * [Sphere Software](https://sphereinc.com) - [github](https://github.com/spheresoftware)
  * [Splice](http://splice.com) - [tweet](https://twitter.com/mattetti/status/387935640513683456), [blog](http://blog.gopheracademy.com/birthday-bash-2014/go-shaped-splice-engineering-culture/), [blog](https://blog.splice.com/golang-improved-simplicity-reduced-maintenance/)
  * [Springer](http://joinit.springer.com) - [tweet](https://twitter.com/quii/status/575647166091370497)
  * [Square](http://www.squareup.com) - [blog](http://corner.squareup.com/2014/05/evaluating-go-frameworks.html)
  * [StackEngine](http://www.stackengine.com) - [blog](http://stackengine.com/golang-with-circleci/)
  * [Stack Exchange](http://stackexchange.com/) - [blog](http://blog.stackoverflow.com/2014/11/announcing-bosun-our-new-open-source-monitoring-alerting-system/), [github](https://github.com/bosun-monitor/bosun), [website](http://bosun.org/)
  * [Staffjoy](https://www.staffjoy.com) - [blog](https://blog.staffjoy.com/staffjoys-v2-architecture-9d2fcb4015fd)
  * [StatHat](http://stathat.com/) - [Go blog post](http://blog.golang.org/2011/12/building-stathat-with-go.html)
  * [Steals.com](http://steals.com) [blog](http://blog.gopheracademy.com/day-15-shopping-with-go)
  * [SteelSeries](http://www.steelseries.com) - [blog](http://techblog.steelseries.com/golisp/index.html)
  * [StorReduce](http://storreduce.com)
  * [Stream](https://getstream.io) - [github](https://github.com/getstream/)
  * [Stripe](https://stripe.com/) - [github](https://github.com/stripe)
  * [SumoLogic](https://www.sumologic.com/) - [github](https://github.com/SumoLogic/sumoshell)
  * [SuperHuman](http://superhuman.com/) - [HN](https://news.ycombinator.com/item?id=10660225)
  * [SyndicatePro](http://syndicatepro.com/) - [source](https://groups.google.com/d/msg/golang-nuts/eeAmkzaRt-w/rHpoRAGeLD8J)
  * [Tamber](http://www.tamber.com/) - [blog](http://www.tamber.com/posts/ferret.html)
  * [Tapglue](https://www.tapglue.com/)
  * [Tapjoy](http://home.tapjoy.com/) - [blog](http://basho.com/posts/technical/built-on-riak-dynamiq-by-tapjoy/), [github](https://github.com/Tapjoy/dynamiq)
  * [Teespring](https://teespring.com/)
  * [Telit IoT Portal](http://www.telit.com/products-and-services/iot-platforms/iot-portal/)
  * [TelTech](http://www.teltech.co/) - [github](https://github.com/teltechsystems/)
  * [Tendermint](http://tendermint.com/) - [github](https://github.com/tendermint/tendermint)
  * [TF2Stadium](http://tf2stadium.com) - [github](https://github.com/TF2Stadium), [blog](http://blog.tf2stadium.com/how-it-works-basics/)
  * [TGen](https://www.tgen.org/) - [github](https://github.com/tgen), [blog](https://www.tgen.org/blog/)
  * [The Plant](http://theplant.jp) - [Qortex](http://qortex.com), [QoR](http://getqor.com)
  * [Thisissoon](http://thisissoon.com/) - [github](https://github.com/thisissoon/yam)
  * [Thomson Reuters Eikon](https://github.com/ThomsonReutersEikon) - [github](https://github.com/ThomsonReutersEikon) [source](https://groups.google.com/forum/?fromgroups#!topic/golang-nuts/ikt3hcIqicA), [video](https://www.youtube.com/watch?v=mDTg1dLUqBE)
  * [thoughtbot](https://thoughtbot.com/services/go) - [blog](https://robots.thoughtbot.com/tags/go) [github](https://github.com/thoughtbot)
  * [Thumbtack](http://thumbtack.com) - [Go Hercule blog post](http://www.thumbtack.com/engineering/go-hercule/)
  * [TIBCO](http://www.tibco.com)
  * [Timehop](http://timehop.com/) - [blog](https://medium.com/building-timehop/why-timehop-chose-go-to-replace-our-rails-app-2855ea1912d)
  * [TinkerCad](http://tinkercad.com/)
  * [Toggl](http://www.toggl.com) - [blog](http://blog.toggl.com/2012/09/moving-to-go/)
  * [Torbit ](http://www.torbit.com) - [blog](http://torbit.com/blog/2013/02/19/big-data-at-torbit/)
  * [Total Care Auto](http://www.totalcareauto.com/)
  * [Transloadit](https://transloadit.com) - [blog](https://transloadit.com/blog/2014/11/releasing-our-new-go-sdk/)
  * [Treetop Commons, NobleHour](http://www.treetopcommons.com/#intro) - [tweet](https://twitter.com/aimeelevens/status/664124807286427648)
  * [Trippple](http://trippple.co)
  * [Trisoft](https://www.wearetrisoft.com) - software development company with offices in San Francisco and Romania
  * [Tumblr ](http://www.tumblr.com) - [github](https://github.com/tumblr/gocircuit) [source](https://groups.google.com/forum/?fromgroups=#!topic/golang-nuts/qelU5Lrq-uA)
  * [Tune](https://www.tune.com/)
  * [TurboBytes](http://turbobytes.com) - [github](https://github.com/turbobytes?utf8=%E2%9C%93&query=+only%3Asources+), [tweet](https://twitter.com/sajal/status/626287855111835648?s=09)
  * [Twitch](http://www.twitch.tv/) - [blog](http://blog.twitch.tv/2014/04/technically-speaking-group-chat-and-general-chat-engineering/)
  * [Twitter](https://twitter.com) - [blog](https://blog.twitter.com/2015/handling-five-billion-sessions-a-day-in-real-time)
  * [TweetQureet](http://qureet.com) - [blog](http://www.qureet.com/blog/golang-technology-stack/)
  * [Uber](http://uber.com) - [blog](https://eng.uber.com/go-geofence/) [github](https://github.com/uber?language=go) [tweet](https://twitter.com/conormyhrvold/status/816345560143642624)
  * [Ulele](https://en.ulule.com/) - [tweet](https://twitter.com/thoas/status/638355320071409664)
  * [Umbel](http://umbel.com) - [tweet](https://twitter.com/findmjob/status/624255179227967488)
  * [Upskill](https://upskill.io) - [github](https://github.com/APXLabs)
  * [Undisclosed.ch](https://undisclosed.ch/) - [github](https://github.com/xoba/goutil)
  * [Verifone](http://www.verifone.com/)
  * [Vertamedia](https://vertamedia.com/) - [github](https://github.com/Vertamedia)
  * [VerveMobile](http://www.vervemobile.com/)
  * [VividCortex](https://vividcortex.com/) - [blog](https://vividcortex.com/blog/2014/11/20/in-case-you-missed-it-developing-mysql-apps-with-go/), [github](https://github.com/VividCortex/)
  * [VMware](http://www.vmware.com) - [github](https://github.com/vmware/govmomi)
  * [VSCO](http://www.vsco.co) - [blog post](http://www.grpc.io/blog/vscogrpc)
  * [Vungle](http://www.vungle.com) - [shared libs, OpenRTB, VAST, etc](https://github.com/Vungle/vungo)
  * [Weave](http://www.getweave.com)
  * [Weaveworks](http://weave.works)
  * [Wercker](http://wercker.com) - [github](https://github.com/wercker)
  * [Whim](http://joinwhim.com/) - [meetup](http://www.meetup.com/golangsf/events/223166815/), [tweet](https://twitter.com/_peggyli/status/629176462155755520)
  * [Wikia](http://www.wikia.com)
  * [Wireless Registry](http://www.wirelessregistry.com) - [github](https://github.com/wirelessregistry)
  * [Workiva](https://www.workiva.com/) - [github](https://github.com/workiva/go-datastructures)
  * [WP Engine](https://wpegnine.com/) - [github](https://github.com/wpengine)
  * [Yahoo](http://yahoo.com) - [github](https://github.com/search?utf8=%E2%9C%93&q=user%3Ayahoo+language%3Ago)
  * [Yandex](http://yandex.ru) - [blog](https://habrahabr.ru/company/yandex/blog/237985)
  * [Yik Yak](http://www.yikyakapp.com/) - [tweet](https://twitter.com/ardanlab/status/629002599484813312/photo/1)
  * [Zalando](http://tech.zalando.com/) - [github](https://github.com/zalando) 
  * [Zenoss](http://www.zenoss.com/) - [github](https://github.com/control-center/serviced)
  * [Zenreach](https://zenreach.com) - [jobs](https://www.zenreach.com/careers/)
  * [ZITEC](http://www.zitec.de)
  * [Zumba](https://www.zumba.com) - [github](https://github.com/zumba)
  * [Zynga](http://www.zynga.com) - [github](https://github.com/zbase)
  * [Tipe](https://tipe.io) - [github](https://github.com/tipeio)
  * [4wardtech Inc](http://4ward.tech/)

See also [Success Stories](SuccessStories)