Ask HN: Is Golang mature enough for FinTech startups?
11–20 of 21 posts
Re: Ask HN: Is Golang mature enough for FinTech startups?
#12I'd strongly recommend that you at least consider using Elixir [0] instead. Especially since you're coming from Ruby/Rails and you're looking at the frameworks, Phoenix [1] will get you 80% there. Instead of me listing all the nice things about Elixir which you can read about online, feel free to send me an email with any questions regarding usage in production. I've been using it for some time and I'm very happy wit…
Looking into it and setting up a sandbox. From a performance standpoint, how does Phoenix stack up against Rails or Node.js for you? I'm looking at benchmarks http://www.techempower.com/benchmarks/#section=data-r12&hw=p... and, while there are advantages, it doesn't seem to stand out.
You may want to look at these benchmarks also:
https://github.com/mroth/phoenix-showdown
https://gist.github.com/omnibs/e5e72b31e6bd25caf39a
Here is a post about using 2 million active websockets connections in Phoenix: http://www.phoenixframework.org/blog/the-road-to-2-million-w...
From my experience, Rails and Phoenix speed isn't comparable. Even in development mode (with code-reloading etc) Phoenix is much faster than a production Rails server. I've also replaced three Node.js servers with one Elixir server which did the same work with less memory and CPU usage, but I'm aware that most rewrites have a similar story, so I won't claim that this is enough proof.
Re: Ask HN: Is Golang mature enough for FinTech startups?
#13Having written and maintained a large Rails app from the ground up, and done some small projects in Golang, I think you'll be extremely dissatisfied with all of the extra work you'll find yourself doing, which really takes away from the time of actually getting your product in your users hands.
When coming from Rails, most other options will have speed that is tempting. If it were me and I were in your position and wanted to avoid Rails I'd pick Java/JVM for its speed, ecosystem and its fit in to fintech. But that's me. Or just use Rails and rewrite it in the new shiny if and when performance becomes a problem.
Re: Ask HN: Is Golang mature enough for FinTech startups?
#14It sounds like you are building a transactional CRUD webapp that doesn't need to scale all that much, for a startup where the team already has a bunch of experience with Rails, which IMO, has the best ecosystem for webapps available (and I'm not a huge Rails fan.) And the main reason you are looking at Golang is because of performance improvements, even though it doesn't have a great ecosystem yet, never mind a solid…
Django and Rails are roughly the same level of maturity.
The approach that's worked best for us is to keep all of the business logic and CRUD-y stuff in this Django base, then spin out dedicated microservices in the special cases e.g. CPU-bound tasks. I think most startups end up with a similar architecture.
Re: Ask HN: Is Golang mature enough for FinTech startups?
#15TL;DR Yes, but as someone else mentioned, the real question isn't if Go is suitable for Fintech, but if it's suitable for your team and the specific problem you are trying to solve. I work for a startup called Mondo - we're building a full-stack bank and currently it's almost entirely in Go. However, this is a function of our architecture - we provide an API which our apps and frontend (some using react) communicate…
Re: Ask HN: Is Golang mature enough for FinTech startups?
#16Why not Java? It's more powerful, mostly faster, has superb tooling, high quality libraries for just about everything, tons of very experienced developers, etc.
Particularly look at the orange bars in the graph "Programming Languages" on [1] which is based on data from AngelList.
1: http://codingvc.com/which-technologies-do-startups-use-an-ex...
Re: Ask HN: Is Golang mature enough for FinTech startups?
#17Why not Java? It's more powerful, mostly faster, has superb tooling, high quality libraries for just about everything, tons of very experienced developers, etc.
Re: Ask HN: Is Golang mature enough for FinTech startups?
#18Why not Java? It's more powerful, mostly faster, has superb tooling, high quality libraries for just about everything, tons of very experienced developers, etc.
Java takes longer to build with and it's harder for startups that are working on product market fit. Once we figure things out, we can rewrite in Java, but before then it's premature optimisation in my book.
Longer or harder than using Golang? Unlikely.
Golang has some advantages over Java like a simpler deployment model, less runtime overhead, etc but overall for a fairly standard web application it makes much more sense to pick Java over Golang.
> but before then it's premature optimisation in my book.
Then so is using Golang. You have answered your own original question :). Keep using Ruby.
Re: Ask HN: Is Golang mature enough for FinTech startups?
#19Why not Java? It's more powerful, mostly faster, has superb tooling, high quality libraries for just about everything, tons of very experienced developers, etc.
In startups it's easier to hire devs for JavaScript/Ruby/Python over Java/C#/etc. Particularly look at the orange bars in the graph "Programming Languages" on [1] which is based on data from AngelList. 1: http://codingvc.com/which-technologies-do-startups-use-an-ex...
In the FinTech world most of the developers with deep domain knowledge will know Java/C++.
Of course it really depends on what the OPs startup is trying to do.
Re: Ask HN: Is Golang mature enough for FinTech startups?
#20Earlier quoted context omitted.
In startups it's easier to hire devs for JavaScript/Ruby/Python over Java/C#/etc. Particularly look at the orange bars in the graph "Programming Languages" on [1] which is based on data from AngelList. 1: http://codingvc.com/which-technologies-do-startups-use-an-ex...
It really depends. Outside of SV there are 10x as many skilled Java/C# developers. In the FinTech world most of the developers with deep domain knowledge will know Java/C++. Of course it really depends on what the OPs startup is trying to do.
In fact even in my city (Cincinnti, OH) there are more Java developers than any other language, but they are mostly in corporate jobs.
So here still there are less Java developers working in startups compared to other languages.