AVP - Business at VAYUZ Technologies Pvt. Ltd.·
Needs advice
on
Node.jsNode.jsPythonPython
and
RailsRails

Hi Community! Trust everyone is keeping safe. I am exploring the idea of building a #Neobank (App) with end-to-end banking capabilities. In the process of exploring this space, I have come across multiple Apps (N26, Revolut, Monese, etc) and explored their stacks in detail. The confusion remains to be the Backend Tech to be used?

What would you go with considering all of the languages such as Node.js Java Rails Python are suggested by some person or the other. As a general trend, I have noticed the usage of Node with React on the front or Node with a combination of Kotlin and Swift. Please suggest what would be the right approach!

READ LESS
Neobank - Wikipedia (en.wikipedia.org)
22 upvotes·267K views
Replies (9)
Recommends
Serverless

Use the language which works well for the developers you have or have available. If you're starting, building a first iteration is far more important than worrying about what language might be best to solve a problem you may never have.

When hiring, look for developers, not "node developers" or "java developers" having people who recognise and are willing to adapt means you can have the flexibility you will need to solve as-yet unforeseen issues. Hire people who are wed to a specific language and you will be bound to that language, regardless of whether it's most appropriate or not.

READ MORE
42 upvotes·1 comment·30.6K views
Shivam Bhargava
Shivam Bhargava
·
March 26th 2020 at 7:43AM

Hey! Thanks for the response. I do agree with this line of thought, currently I do have an established team of Folks who are pretty good at NodeJS and related stacks (MEAN, MERN, Meteor etc.) along with expertise in Flutter, Native Apps along with AWS as well. I think this would constitute the core App and then integrations all across can take place. Would you have any reading material on the Serverless front in relation to Neobanks / Digital Banking platforms? Thank you.

·
Reply
Recommends
Rails

For online banking, it'll be less computation intensive and more data intensive. So, Rails will be better than Python. I'll not recommend Node.js as it's not as scalable as those. If I had to choose indepently I would took Go.

READ MORE
19 upvotes·5 comments·30.6K views
Mikael Sand
Mikael Sand
·
March 27th 2020 at 9:48PM

What measurements do you base the scalability conclusion / comparison of python, ruby (rails), and nodejs on?

·
Reply
Shaswata Das
Shaswata Das
·
April 1st 2020 at 12:46PM

nodejs maintains concurrency by events, it's common sense that a single thread would never be able to equivalent of multi-thread.

Now, let's talk about Ruby vs Python.

Python requires the developer to be clean about side effects and isolation. With Ruby one can write concurrent programs that operate on multiple cores easily, similar to Python, a developer is responsible for side effects and isolation issues. Python’s concurrency process is more resource-demanding as compared to Ruby. But then again, it boils down to developer coding habits if one has to take the cake offered by both Python and Ruby Performance languages.

·
Reply
Mikael Sand
Mikael Sand
·
April 1st 2020 at 3:55PM

Seems like a banking system would have its scalability depend more on the transactional database in use, rather than the choice of language used for the api layer, which probably just translates from/to http+json or whatever transport and message standards used, to some atomic sql / db query in a transaction and serialising the response. Seem unlikely there would be any need for shared memory multi-threading in the api layer. Node.js could probably be used just fine, e.g. with PostGraphile on top of PostgreSQL. It seems very unlikely to be the bottleneck.

·
Reply
Shaswata Das
Shaswata Das
·
April 2nd 2020 at 8:59AM

In case of online banking, bottleneck may occur. I'd rather prefer isolated hybrid database API, that'll better than PostGraphile. For security issues, I'll not recommend any GraphQL API in online banking application, also it'll not be helpful in this scenario. It's true that "a banking system would have its scalability depend more on the transactional database in use", but when it's about online banking it's not only about transaction, I bet, they've more to offer to their clients. So, scalability on api layer is also important for this case.

·
Reply
Varun Sharma
Varun Sharma
·
April 22nd 2020 at 9:51AM

Brother I have been working in Ruby on rails and nodejs from last 3 years. From my experience it is easy to scale nodejs as compared to Ruby and it even requires less resources for deployment as well. This was one of the reason why linkedin shifted their stack from Ruby on Rails to Nodejs.

·
Reply
View all (9)
Avatar of Shivam Bhargava

Shivam Bhargava

AVP - Business at VAYUZ Technologies Pvt. Ltd.