Business Technologies is a leading Russian developer of IT solutions and a provider of services in the digitalization of business processes. For 25 years, we have been creating high-performance domestic products and technologies.
We are working on the Global ERP technological platform — a real domestic alternative to SAP. Our solutions, designed for thousands of active users, operate successfully in industrial enterprises and large corporations.
We are inviting a senior fullstack java developer to join our team. Your role will involve solving diverse tasks at the frontend and backend levels to create an industrial application server, which is a key part of our platform.
About the Project:
The Global ERP application server is the execution environment for business applications written in Scala. The server is written in Java, JS, and TypeScript. It manages the loading of executable code, user sessions, transactions, and database access. The Global-Framework, as part of the server, provides an API for interaction with the UI, a set of high-level UI primitives (frame containers, lists, editors, charts, Gantt charts, CAD, and others), an abstract meta-model of applications, DSL execution and debugging tools, and monitoring and cluster operation tools. The web client generates the user interface based on the application model built on the server using metadata from the business logic layer. Together, they provide the ability to quickly create ERP, CRM, and MES business applications.
Responsibilities:
- Development of new functionality, bug fixing, refactoring;
- Participation in architecture development and solution design;
- Participation in the process of improving product quality and team performance;
- Writing unit and visual tests;
- Development of the company's internal development environment.
Requirements:
- Higher or secondary professional education. A degree in Computer Science will be an advantage;
- Strong knowledge of Java SE (We are ready to consider transitions from other languages such as Python, NodeJs, C++, Delphi);
- Strong knowledge of OOP or functional programming;
- Minimal algorithmic preparation (you are not confused by questions like: "Estimate the complexity of an algorithm", "tell me about tree traversal options", "write your own implementation of the LinkedList interface");
- From a Senior candidate, we expect extensive experience (at least 6 years) in solving non-trivial problems.
Will be a plus:
- Web development experience.
How it's structured:
- A large project with its own modern technologies and non-standard solutions. Lots of work and directions. It will be challenging, but interesting;
- We write unit and integration tests, conduct code reviews, use agile development methodologies, build a self-organizing team, and develop an open environment for making the best decisions;
- Retrospective and feedback are the pillars of our activity. We constantly improve our development methodologies and increase our efficiency;
- We believe that developing a quality product is cheaper in the long run than a low-quality one;
- We prefer open technologies;
- The team's work involves the following technologies: ci&cd, gradle, sbt, git, gitlab, uml, trello, vscode, intellijIdea, wiki, jenkins, mattermost, scala, python, typescript, react, golang, npm, jest, puppeteer, docker, devcontainer, LXC, sphinx-doc, and many others. We use third-party products and components for product development: sencha, ag-grid, infinispan, antlr, jetty, jasper, postgreSQL.
Conditions:
- Russian product-accredited IT company;
- Complex, interesting, and promising project;
- Official employment according to the Labor Code of the Russian Federation, fully legal salary;
- Work format of your choice: office, hybrid, remote. Our offices are located in St. Petersburg, Perm, Nizhny Novgorod, Vologda, with plans to open in Kazan;
- Flexible start of the workday;
- Distributed team, friendly and supportive environment;
- Corporate and sports events, pizza day on the last Friday of the month;
- Voluntary medical insurance after 3 months of employment with the company.