Back to board
infotreeglobalsolutions·3 months ago

Java Developer

Warsaw, PolandInternshipMid · 2-5 yearsH1B likely

About this role

Senior Java Developer (TMS)

Job Responsibilities:

• Design and implementation of IT solutions based on the presented analytical and technical documentation;

• Reviewing analytical documentation;

• Creating technical documentation;

• Technical upgrade for existing system;

• Working with legacy code

• Conducting regular scans of the application and removing vulnerabilities

Job Requirements:

• Fully available in the Polish time zone;

• Ability to work from the office in Warsaw (weekly: 4 days at the office + 1 day WFH );

• Very good knowledge of Java 8+ and object-oriented programming issues;

• Experience in independent design, implementation, documentation, and testing of application components;

Very good and practical knowledge of Spring, Spring Boot, Hibernate/JPA, and JEE frameworks;

• Practical knowledge with message queue systems, particularly RabbitMQ;

• Practical knowledge of tools supporting the software development process: Maven, Git, Gitlab, Gitlab CI/CD, Jenkins, Nexus, Jira;

Knowledge of relational databases, in particular Oracle;

• Practical knowledge of RESTful API design;

• Experience in system integration;

Experience with distributed systems;

Experience with application servers, JBoss/WildFly;

· Knowledge of scanning tools (Fortify, Sonatype..)

• Knowledge of English / B2;

Description of the area of involvement:

TMS (Terminal Management System) is used to manage a very large number of payment terminals (300k+). It gives users a uniform way to manage different terminals from different hardware vendors.

TMS has a complex architecture, consisting of two components: TMS (1 WildFly instance), providing a GUI and implementing some business functions, and RTMS (3 Spring-boot instances), implementing most of the business functionalities. A gradual migration from TMS to RTMS is being carried out.

The system intensively uses Spring, Hibernate, and RabbitMQ.

The system has distributed transactions (different two-phase-commit, saga approaches) and a distributed cache (Hazelcast).

TMS is integrated with many internal and external systems (via REST, SOAP, RMI, direct database connections, and database links).

The GUI is written in GWT and GWTExt.