5 ms·
Is Go the primary language in Uber now? I see a lot of tools written in Go coming out of Uber. What kind of services inside Uber is Go used for?
by ra7 7y ago
Is Go the primary language in Uber now? I see a lot of tools written in Go coming out of Uber. What kind of services inside Uber is Go used for?
- ryanworl 7y agoUber's distributed time series database M3 (https://m3db.io https://m3db.io) is written in Go.
- yibilabi 7y agoYes, Go is the primary language in Uber.
- ladysman217 7y agoGo is pretty good
- xyzzy_plugh 7y agoFor backends they've standardized on Go and Java, deprecating/eliminating node and python where possible. I understand node is still prevalent for serving react-based frontends, both external and internal facing.
- dev_dull 7y agoHow do they decide with a new backend service to use Go vs Java?
- benlc 7y agoOften comes down to the preference of the engineers in a given team and evaluating pros and cons with engineers outside their team (aka review their plans before they start building)
- xyzzy_plugh 7y agoI'd guess it's usually up to the developers/owning team, but also to some extent depending on the ecosystem it's interacting with (e.g. Hadoop would tend to prefer Java)
- badrequest 7y agoUber have well over 1,500 microservices written in Go, it is the primary language backend services are written in at Uber.
- OJFord 7y ago> Uber have well over 1,500 microservices written in Go 1500?! I can't even imagine how micro a microservice could be such that Uber could have so many. edit: Having said that, the Monzo blog post also on the front page says it has 1100 microservices, so I suppose I've just not worked somewhere with 'actual' microservices. What constitutes a 'service', a single procedure for RPC?
- pjmlp 7y agoI guess they suffer from "leftpad as service". http://left-pad.io/ http://left-pad.io/
- sidlls 7y agoThe target is one microservice per syscall, maybe.
- deleted 7y ago[deleted]
- badrequest 7y agoI don't work at Uber, so I can't answer your questions around motivation, but I took the 1,500 value from this presentation at Gophercon this year: https://www.youtube.com/watch?v=nLskCRJOdxM&t=22m59s https://www.youtube.com/watch?v=nLskCRJOdxM&t=22m59s
- jpalomaki 7y agoI would imagine quite a services to just deal with legislation/taxation stuff in all the different markets they operate in. These can also result on several integrations to government systems - all country specific. In some markets they are partnering with taxi companies - maybe more integrations for ordering and reporting. In general it is easy to underestimate the complexity of systems you are not familiar with. The devil is in the details and deeper you look, more complicated it usually gets.
- kerng 7y agoProbabaly more of an emotional, rather then rational decision. I heard that many Go folks from Google joined Uber. Looking at the stock, they probably should focus on building new things/better the business model, rather then rewriting things in Go.
- mytailorisrich 7y agoWhat else have they got to do, though? Uber have thousands of engineers to develop and maintain a taxi hailing app...
- ninkendo 7y agoWork on their internal chat app, I guess? https://eng.uber.com/uchat/ https://eng.uber.com/uchat/
- xmprt 7y agoThat's built on top of Mattermost which is open source. They do build their own infra instead of using cloud though so that probably uses a big part of it.
- mytailorisrich 7y agoHowever you look at it, Uber and other new so-called tech companies these days spend like there is no tomorrow instead of focusing on the bottom line.
- weberc2 7y agoI'll bite. Why do you suppose it's an emotional decision? And why do you assume they're rewriting things and not writing new code in support of their business model?
- kerng 7y agoBecause they have publicly talked about it: https://eng.uber.com/schemaless-rewrite/ https://eng.uber.com/schemaless-rewrite/