Senior Java Developer

Summary

Senior Java Developer builds, tests, and refactors a high-scale web app using Java, Spring, Hibernate, and React, while driving Agile processes and clean-code practices in Krakow.

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

  • Development
  • Refactoring
  • Unit and Integration testing
  • Estimations
  • Investigations
  • Research
  • New initiatives/ ideas
  • Active participation in distributed agile process.

SKILLS

Must have

  • At least 8 years of practical experience in writing readable code and commercial software design
  • Experience in Java 8
  • Experience in using clean code principles, design patterns, system architecture
  • IntelliJ
  • Unit testing (assertj or hamcrest, mockito)
  • OOP & OOD

Nice to have

• Experience in TDD • Integration testing • UNIX • SQL • Maven • Spring (boot) • Spring integration • JMS • ReactJS • Teamcity • JPA • Hibernate • Microservices Design Patterns • Experience with distributed systems