JavaRush /Java Blog /Random EN /I work in a food fintech company: developers share their ...

I work in a food fintech company: developers share their experience

Published in the Random EN group
We continue a special series of materials in which programmers who write in Java talk about different types of IT companies. We hope that the experience of our heroes will help JavaRush students and juniors understand what kind of company they would like to work for. In this text, Java developer Slava Kruglov shares his experience of working in the fintech field: what are the advantages and disadvantages, is it worth going to an IT company of this type. I work in a food fintech company: developers share their experience - 1I used to work for outsourcing companies. I wanted to try myself in a new job, an acquaintance suggested that I get a job at a product company in the fintech field. I have been working at SDK.finance for about two years now. At SDK.finance we are developing a set of tools for creating payment systems.

Technology stack

Modern realities require modern approaches, because the number of Internet users is growing rapidly and, accordingly, the number of electronic transactions is increasing. People are increasingly dealing with electronic money and its circulation. Because of this, the load on fintech applications is growing, so the modern technology stack in fintech involves working with distributed systems. A fintech application must be able to handle heavy loads. In addition, such an application must be reliable, since it works with money. Any hacks on the part of the developer can result in serious sums and serious compensation. I’ll tell you about the technology stack using our product as an example. It started back in 2013; at that time, electronic payments were not yet as popular as they are now. We use Java EE , Java version 8, Hibernate , PostgreSQL database , MongoDB database management system . We are currently writing a new version of the product using the Spring framework, as there is a need for optimization and we need to keep up with market requirements. Unfortunately, Java EE is virtually dead, it is not supported, and the community around Spring is very large. Large enterprise projects ( Enterprise development is development aimed at solving business problems, as opposed to development to solve end-user problems - ed. ) more often use Java. Why Java? This is already a fairly established language, the community is large and has a diverse stack of technologies and libraries. Java can also ensure application security, which is important for enterprise development. Many frameworks and libraries have been written for Java: there is no need to write “bicycles”, everything has already been created by competent developers and tested many times. We can summarize it this way: Java is more reliable and faster (thanks to Spring).

Who should go into fintech

The whole question is how quickly a developer can adapt to a particular area and how much effort he is willing to make to study the domain area of ​​the project , since this is the greatest difficulty. There must be a desire to understand the code. There is nothing mysterious or super complicated about fintech. The most difficult thing that can be in fintech is calculating the commission as a percentage, and this is actually basic mathematics. In the field of fintech there is quite a high psychological pressure; it happens that millions of turnovers pass through the application. There were also fakaps: then we had to work at night and come up with ways to fix the application.

About the product it works in

SDK.finance is a core payment software with a strong API for banks and fintech companies. The platform consists of 5 main components: a backend containing over 400 API endpoints, 3 front-end frameworks, and a network to manage the system with iOS and Android capabilities for our clients. Most often, our application performs accounting tasks: we keep track of client income and expenses, carry out transactions with monetary systems, and can make transfers between wallets. Our clients are mainly businesses. For example, we have a client who manufactures terminals and distributes them. Using our application, the client maintains an account for sellers. Our application sends the client information about the amount of the transaction, this information is saved, and later we record transactions, as well as integrate with the bank where the seller has an account. The point is that thanks to integration with the bank, we can withdraw the seller’s money to his personal account. Our main client (the seller of terminals) receives a commission for the fact that sellers use his terminals, and sellers are happy that they automatically receive money into their accounts. It is very comfortable. This is only part of the capabilities of our application.

How promising is it to work in fintech?

This is definitely promising. This is a very interesting field to work in as your application faces high loads. Millions of transactions per second can occur - this job is suitable for those who enjoy a challenge.

Pros and cons of working in fintech

Pros:

  • Expanding your horizons. The developer begins to understand how electronic money and the entire system around it works. This is both a useful and enjoyable skill.
  • You will always have work. New clients come who need integrations and specific features. In fact, there are always tasks: light and heavy.

Minuses:

It can be difficult to transfer fintech projects to new directions and implement new technologies in them, since such applications must be handled carefully and carefully.
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION