Senior Java Developer
Summary
Design and implement Java-based components for a scalable financial application using Spring, Hibernate, and TDD; maintain clean code and unit tests.
Project description
Team: Highly open minded, progressive and professional team. Technologies: Highly scalable and flexible web application based on state-of-the-art technologies like Java, JSF, JUnit, Mockito, PowerMock, JBehave, Grails, Spring, Hibernate, Sybase, Maven, TeamCity, GitHub, Liquibase, AppDynamics, JMeter, Sublime, React, Cucumber. Process: Agile process implemented, including artifacts as product backlog refinement, sprints, product backlogs, retros, velocity, and getting feedback from end users. Quality is everything. UI/ UX developer and TDD/ BDD approaches with extended OOP/ clean practices on the board. Business trips: occasional business trips to London where key end users and main stakeholders are located in mostly on project requirements and architecture. Infra: Superb infrastructure for development and communications. On-going learning: Regular business trainings from real market operators from NY and London. Innovation: open forum with top-down and bottom-up ideas for technical and organizational improvements. Moreover towards Release When Ready, Release on Demand, Molecular Platform with Kafka, Flink, ElasticSearch, Docker for AI and Azure cloud adoption.
Responsibilities
- Design and implement software components according to business/functional requirements
- Perform unit testing of software components
- Support system integration and user acceptance testing
- Assist in project configuration and requirements management processes
- Analyze existing system code and propose improvements when necessary
SKILLS
Must have
- Experience in core Java
- Basic UNIX skills
- Spring basics
- Strong OOP skills and ability to propose the design and implement changes in complex systems
- Promoting clean code discipline (Clean Code: A Handbook of Agile Software Craftsmanship)
- Practical experience with unit testing and TDD
- Problem-solving skills
- Pro-active team worker
- Good communication skills
- Professional Working Proficiency in English
Nice to have
• Experience in Kafka, Docker, Azure (Functions, CosmosDB, AKS) • Understanding of event-driven architecture and data processing • Basic understanding of microservices architecture • Experience in dealing with distributed client representatives • Familiar with the financial sector • Familiar with the corporate banking environment