HACKER Q&A
📣 yawaramin

Any info on Go adoption in industry?


I am being asked to provide some info about Go adoption/availability of devs/ease of hiring training. Standard upper management CYA stuff. So far I have:

- It's one of the most popular languages according to Stack Overflow survey: https://survey.stackoverflow.co/2022#technology-most-popular-technologies

- Near Kotlin and Rust in the upper right quadrant of the RedMonk rankings: https://redmonk.com/sogrady/2023/05/16/language-rankings-1-23/

What I'm not familiar with, is data on hiring/availability of devs. I know this is a vague question, but given my company's engineering teams, data for Canada or Poland would probably work.

Would appreciate any pointers!


  👤 stefanos82 Accepted Answer ✓
What is your local market tells you about the usage of Go language? Do they ask for it via job ads or prefer much more traditional technologies, such as Java or something alike?

Last time I had a conversation with a couple of companies I keep in touch (a couple of months ago), we had a long discussion about their choice to migrate their backend services originally implemented in Go, to re-implement them either in Java or (modern) C++, after the telemetry fiasco [1] that is going to be added in future release of Go inside their toolchain.

They told me they cannot risk it, be it opt-in or opt-out, it does not matter for them, because Google any time it wants can make it mandatory, and as a financial institution with high competition, they cannot risk it; that's what they said to me, not my words.

So...would I use it nowadays? Absolutely not.

Should you stay with a much more traditional tech stack, such as Java? Yes, of course, especially now with the release of OpenJDK 21 that will introduce virtual threads that more or less behave like Go's goroutines.

That's just my honest opinion, that's all.

[1] https://github.com/golang/go/issues/58894


👤 devjab
In my region of Denmark I think there has been one Go job offer in the past 5 years on linkedin, and it was for some Google PHD job mainly working with C++ where it was listed among like 20 other programming languages.

I think these things will depend a lot on the where. Around here the job market is pretty much all C#, Java and Typescript for "general purpose" development. There is still a strong PHP presence for web and C/C++ owns the embedded market, but other than that you'll be hard pressed to find a programming job. There are quite a lot of Python jobs as well, but they are almost exclusively for mathematicians who work in ML, AI and/or BI.

We did a few proof of concepts in different languages around august last year, Go being one of them, and found the language to be fairly immature and quickly dropped it. This is obviously very anecdotal, but basically every Go package we would look at would be fairly unmaintained. Often it seemed like one or a few developers at some organization decided to use Go and build something rather brilliant, that then went unmaintained as those developers found new work.


👤 mbcrosier
I’ve used Lightcast (prev EMSI) data before to look at skills in demand / job posting trends. you have to request access, but they have a free API and the data was impressively clean in my experience, although it was a few years ago.

They definitely cover Go in Canada (here’s a preview page): https://lightcast.io/open-skills/skills/ESA5839C44D0970CF79F

Less sure on Poland. That would cover demand, and then maybe you could look at average job posting age/time to fill as a proxy for supply and ease of hiring?


👤 yawaramin
Just wanted to clarify something–I'm not looking for anecdotes or assumptions, only data (statistics). I can't go to Management and say 'HN seems to think that it should be easy/hard to hire Go devs'. I need some actual numbers, no matter how general. Thanks.

👤 tmaly
We hired for a Go spot. It is not easy to hire for. There are some people out there, but not as many as for Java or Python.

But that being said, Go is very simple to learn. If you can hire a smart programmer that understands concurrency topics in another language, they can learn Go on the job.