# Companies currently using Go throughout the world

## 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)
  * [BBC](http://www.bbc.co.uk) - [source](https://github.com/bbc/mozart-api-common)
  * [BBC Worldwide](http://www.bbcworldwide.com/) - [source](http://www.quora.com/Go-programming-language/Is-Google-Go-ready-for-production-use/answer/Kunal-Anand)
  * [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)
  * [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)
  * [Canonical](http://canonical.com/) - [source](http://www.youtube.com/watch?v=7QDVRowyUQA), [email](https://groups.google.com/d/msg/golang-nuts/jLnMsUbYwrQ/isfMUvBOkEIJ)
  * [Carbon Games](http://carbongames.com/) - [source](http://carbongames.com/opensource.html#the_go_programming_language_bsd)
  * [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/)
  * [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](http://codeship.com) - [blog](http://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/)
  * [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)
  * [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)
  * [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)
  * [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)
  * [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)
  * [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/)
  * [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/)
  * [Gatherer](http://gathererapp.com/) - [twitter](https://twitter.com/codepushr/status/653880049343537153)
  * [Gamegos](https://github.com/gamegos)
  * [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/)
  * [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)
  * [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), [caio cloud orchestration](https://github.com/01org/ciao)
  * [identakid.com] (http://identakid.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)
  * [JelloLabs](http://www.jellolabs.com)
  * [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)
  * [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/)
  * [Leader](http://leader.io)
  * [Lean Labs](http://kanban.leanlabs.io/) - [git release](https://gitlab.com/leanlabsio/kanban/blob/master/CHANGELOG.md#130-2015-09-06)
  * [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/)
  * [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)
  * [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/)
  * [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)
  * [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)
  * [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)
  * [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/)
  * [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)
  * [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)
  * [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)
  * [Raintank](http://www.raintank.io/) - [blog](https://blog.raintank.io/where-and-why-we-use-go/)
  * [Rakuten Marketing](http://marketing.rakuten.com)
  * [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/)
  * [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)
  * [Segment](https://segment.com/) - [github](https://github.com/segmentio?query=go)
  * [SendGrid](http://sendgrid.com/) - [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)
  * [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)
  * [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)
  * [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/)
  * [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)
  * [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)
  * [Teamwork](http://teamwork.com/) - [blog](http://engineroom.teamwork.com/our-future-stack-or-why-we-love-knockout-coffeescript-redis-and-go/)
  * [Teespring](https://teespring.com/)
  * [Telit IoT Portal](http://www.telit.com/products-and-services/iot-platforms/iot-portal/)
  * [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/)
  * [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)
  * [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)
  * [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)
  * [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)
  * [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)
  * [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)


## Australia
  * [Atlassian](http://atlassian.com/)
  * [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)
  * [Sajari](https://www.sajari.com) - [github](https://github.com/sajari) [blog](https://www.sajari.com/blog/upgrading-sajari-to-go-15)

## Austria
  * [Gatherer](http://www.gathererapp.com/)

## 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)
  * [Telenor Health](https://www.mytonic.com)(A health service company) built USSD server with go

## Brazil
  * [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)
  * [Coderockr](http://coderockr.com)
  * [Compufácil](http://compufacil.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)
  * [Hotel Urbano](http://www.hotelurbano.com)
  * [Jexia](http://jexia.com) - [github](https://github.com/jexia-inc)
  * [Magazine Luiza](http://www.magazineluiza.com.br) - [github](https://github.com/luizalabs)
  * [Mendelics](http://www.mendelics.com) - [github](https://github.com/mendelics)
  * [Moip Pagamentos](https://www.moip.com.br)
  * [Neoway Business Solutions](http://www.neoway.com.br) - [github](https://github.com/NeowayLabs)
  * [Nic.br](http://www.nic.br) - [github](https://github.com/registrobr)
  * [Nuveo](http://nuveo.com.br/) - [github](https://github.com/nuveo)
  * [Planrockr](http://planrockr.com)
  * [Resultados Digitais](http://www.resultadosdigitais.com.br/trabalhe-conosco)
  * [ServiceNet](http://www.servicenet.com.br)
  * [SiBBr.gov.br](http://www.sibbr.gov.br) - [github](https://github.com/sibbr)
  * [TOTVS](http://en.totvs.com/cloud)  
  * [Ulife](http://www.ulife.com.br) - [github](https://github.com/ulifebr)
  * [Walmart](http://www.walmart.com.br)

## Belgium
  * [Pronovix](http://pronovix.com/) - [github](https://github.com/Pronovix)
  * [Be-Mobile](http://www.be-mobile.com/)

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

## Canada
  * [Go2Mobi](http://www.go2mobi.com/) - [HN](https://news.ycombinator.com/item?id=10660847)
  * [Koho](https://www.koho.ca/)
  * [Pressly](https://www.pressly.com/) - [github](https://github.com/goware/httpcoala)
  * [ThinkSquare](https://www.thinksquare.io)
  * [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)

## Chile
  * [Prey](https://preyproject.com) - [blog](https://preyproject.com/blog) - [github](https://github.com/prey)
 
## China   
  * [163yun](http://www.163yun.com/) - [github](https://github.com/163yun) - Netease Public Cloud
  * [Qiniu](http://www.qiniu.com/) - [github](https://github.com/qiniu)
  * [Yeeuu](https://www.yeeuu.com/)

## Croatia
  * [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)

## France
  * [Digikong](http://digikong.io)
  * [Objenious](http://www.objenious.com)
  * [Rive](http://app.rive.world)
  * [Batch.com](https://batch.com)
  * [IRI France](http://www.iri-labs.com)
  * [Teads.tv](http://teads.tv/)
  * [Algolia](https://algolia.com)

## Germany
  * [Bürkert](https://www.burkert.com/en/)
  * [Fraugster](https://fraugster.com/)
  * [HaCon Ingenieurgesellschaft mbH](http://hacon.de/)
  * [HelloFresh](http://www.hellofreshgroup.com/) - [github](https://github.com/hellofresh)
  * [JustWatch](https://www.justwatch.com/us) - [HN](https://news.ycombinator.com/item?id=10658330)
  * [Streetspotr](http://streetspotr.com) - [blog](https://thcyron.de/2015/go-at-streetspotr.html) - [tweet](https://twitter.com/thcyron/status/372350650580865024)
  * [Sixt](https://www.sixt.com)
  * [Weaveworks](http://weave.works)

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

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

## India
  * [Betacraft](http://www.betacraft.co/)
  * [BookMyShow](http://www.bookmyshow.com/)
  * [C42 Engineering](http://c42.in/)
  * [CodeIgnition](http://codeignition.co/) - [twitter](https://twitter.com/AjeyGore/status/667515185486102529)
  * [Company 0](https://www.companyzero.com/)
  * [Exotel](http://exotel.in) - [website](http://www.gophercon.in/#sponsor)  
  * [Fastah (Blackbuck Computing)](https://angel.co/blackbuck-computing/)
  * [GeekTrust](http://geektrust.in/)
  * [Gloop](http://gloop.io/)
  * [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/)
  * [Qwinix](https://www.qwinixtech.com/)
  * [Sahaj Software Solutions](http://www.sahajsoft.com/)
  * [Siminars](http://siminars.com)
  * [SoStronk](https://www.sostronk.com/)
  * [Synerzip](http://synerzip.com/)
  * [Techequity Technologies](http://www.techequity.in/)
  * [Testbook](http://testbook.com/)
  * [ThoughtWorks](https://thoughtworks.com/)
  * [Unbxd](http://unbxd.com)

## Indonesia
  * [Auditsi Executive Recruitment Services](http://auditsi.com)
  * [Brodo](http://www.bro.do/)
  * [Bukalapak](http://bukalapak.com)
  * [Codemi Learning Management System](http://codemi.co.id)
  * [GO-JEK](https://www.go-jek.com)
  * [Ice House Corp](https://www.icehousecorp.com)
  * [HappyFresh Indonesia](https://www.happyfresh.id)
  * [Kelir.tv](http://kelir.tv)
  * [Kudo](https://kudo.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)
  * [President University](http://presuniv.com)
  * [Qasico Teknologi Indonesia](https://qasico.com)
  * [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)
  * [Rimbun Job Agency](http://www.rimbunjob.com)
  * [Sale Stock](https://www.salestockindonesia.com)
  * [SAP Indonesia](http://go.sap.com/corporate/en/company/office-locations/indonesia.html)
  * [Tokopedia](http://tokopedia.com)
  * [Zelos](http://zelos.id)

## Iran
  * [AlAlam](http://en.alalam.ir/) -- AlAlam news network TV channel
  * [Aparat](http://www.aparat.com) -- Most popular video sharing platform in Iran
  * [Kikojas](http://www.kikojas.com) -- Kikojas is a LBS, focusing on local businesses of the whole country of Iran

## Ireland
  * [Intercom](http://intercom.io/)
 
## Israel
  * [353Solutions](http://353solutions.com) 
  * [BigPanda](http://bigpanda.io) 
  * [Dragontail Systems](http://www.dragontailsystems.com) 
  * [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)
  * [Nexar](https://www.getnexar.com/)
  * [PushApps](https://www.pushapps.mobi/) 
  * [Protected Media](http://www.protected.media) 
  * [Rimoto](http://www.rimoto.com/)
  * [Rounds](http://www.rounds.com)
  * [StreamRail](https://www.streamrail.com/)
  * [Surge Media](https://surge.media)
  * [TechedUp](http://www.techedup.net) - ([Blog](http://blog.techedup.net/category/go/)) 
  * [uponit](https://uponit.com/) 
  * [Yodas](https://yodas.com) 
  * [Yotpo](https://www.yotpo.com/) 

## Italy
  * [Hastega](http://www.hastega.it) - ([github](https://github.com/tockins/realize)) -- Go build system for dev with file watchers and live reload. Run, build and watch file changes with custom paths
  * [Qurami](http://www.qurami.com) - [github](https://github.com/qurami)
  * [Trenìt!](http://www.trenit.info) - ([FB post](https://www.facebook.com/photo.php?fbid=907728379283787)) -- Most popular mobile app for Italian trains schedules

## Japan
  * [Cybozu](https://www.cybozu.com) - [github](https://github.com/cybozu-go)
  * [DeNA Co.,Ltd.](https://dena.com)
  * [eureka](https://eure.jp)
  * [Fenrir](http://www.fenrir-inc.com/jp/)
  * [HDE Inc](https://www.hde.co.jp/en/)
  * [Hatena](http://hatenacorp.jp/)
      * [Mackerel](https://mackerel.io) - Monitoring as a Service ([github](https://github.com/mackerelio))
  * [Intelligence](http://www.inte.co.jp/)
  * [KAYAC Inc.](https://www.kayac.com/) - [github](https://github.com/kayac)
  * [LINE](https://linecorp.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
  * [Preferred Networks](https://www.preferred-networks.jp/en/)
      * [SensorBee](https://github.com/sensorbee) - Lightweight streaming processing engine for IoT
  * [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 IoT Platform β](https://iot.sakura.ad.jp/)
  * [Souzoh](https://www.souzoh.com/jp/)
      * [Mercari Atte](https://www.mercariatte.com/jp/)
  * [Nulab](https://nulab-inc.com/) - [github](https://github.com/nulab)
  * [Bengo4.com,Inc.](https://corporate.bengo4.com/)
      * [CloudSign](https://www.cloudsign.jp/)
  * [HEARTBEATS](https://heartbeats.jp/)
      * [happo-agent](https://github.com/heartbeatsjp/happo-agent) - Yet another Nagios nrpe
  * [VOYAGE GROUP](https://voyagegroup.com/)

## 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

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

## 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
  * [Jexia](http://jexia.com) - [github](https://github.com/jexia-inc)
  * [localsensor](http://localsensor.com/)
  * [MessageBird](https://www.messagebird.com/) - [github](https://github.com/messagebird)
  * [Nextail](https://www.nextail.nl/)
  * [Poki](http://poki.com/) - [company website](http://poki.com/company/), [github](https://github.com/pokibv)
  * [The Things Network](http://thethingsnetwork.org/) - [github](https://github.com/TheThingsNetwork/)
  * [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)

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

## Poland
 * [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
 * [Husar Labs](http://www.husarlabs.com) - software development company

## Portugal
  * [AppGeneration](http://appgeneration.com/)
  * [Uniplaces](http://uniplaces.com/)

## Romania
* [Trisoft](https://www.wearetrisoft.com) - software development company with offices in San Francisco and Romania

## Russia
* [ITooLabs](http://itoolabs.com)
* [PostmanQ](https://github.com/actionpay/postmanq) - High performance Mail Transfer Agent (MTA)

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

## Southeast Asia
  * [Grab](http://www.grab.co/)
  * [engageSPARK](https://www.engagespark.com/) - [HN](https://news.ycombinator.com/item?id=10655752)
  * [Tokopedia](https://www.tokopedia.com/)
  * [Pocketmath](http://www.pocketmath.com/)
  * 🇻🇳 [Dwarves Foundation](http://www.dwarvesf.com) - [github](https://github.com/dwarvesf)

## 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)

## 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/)

## Switzerland
  * [AgFlow SA](http://www.agflow.com/)
  * [Centralway Numbrs AG] (https://www.centralway.com/en/)
  * [Perron2 GmbH](http://www.perron2.ch)
  * [Proton Technologies AG] (https://protonmail.com)
  
## Thailand
  * [AIS](http://www.ais.co.th/)  
  * [DTAC](http://www.dtac.co.th/)
  * [Insightera](https://www.insightera.co.th/)

## Turkey
  * [GramGames](http://gram.gs/)
  * [Insider](http://useinsider.com/)

## Ukraine
  * [ElifTech](http://www.eliftech.com)

## United Kingdom
  * [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/)
  * [HM Treasury, UK.gov](http://hm-treasury.gov.uk/) - [github](https://github.com/guidance-guarantee-programme/)
  * [New Bamboo](http://www.new-bamboo.co.uk) - [blog](http://blog.new-bamboo.co.uk/2013/09/17/micro-network-daemons-in-go)
  * [XTX Markets](http://www.xtxmarkets.com) - [github](https://github.com/XTXMarkets)
  * [Badoo](https://badoo.com) - [github](https://github.com/badoo/thunder)
  * [Geckoboard](https://www.geckoboard.com)
  * [Restorepoint](http://www.restorepoint.com)
  * [Songkick](https://www.songkick.com)
  * [Sainsbury's](http://www.sainsburys.co.uk)
  * [Ryanair](http://www.ryanair.com) - [source](https://youtu.be/CWCHT3GClMM?t=15m)
  * [Belua] (https://www.belua.com)
  * [Intern Avenue] (https://www.internavenue.com/)
  * [Pusher](https://pusher.com) - [github](https://github.com/pusher) [blog](https://blog.pusher.com)
  * [Tyk](https://tyk.io) - [github](https://github.com/TykTechnologies/tyk)
  * [Fortifi](http://fortifi.uk) - [github](https://github.com/fortifi)
  * [Monzo](https://monzo.com/) - [github](https://github.com/monzo), [blog](https://monzo.com/blog/2016/09/19/building-a-modern-bank-backend/)
  * [Weaveworks](http://weave.works)
  * [StorageOS](http://storageos.com)

See also [Success Stories](SuccessStories)