Вакансия Senior / Lead Java Developer

52 вакансии
Специализация: Java
Уровень: Senior
Опыт: Более 5 лет
Уровень английского: Intermediate
Город: Минск
Размер компании: 580

Great software doesn’t happen on its own. It takes great people. That just happens to be our forte. With nearly 20 years of matching top engineering talent with preeminent and innovative brands, we look for people who are inquisitive, resourceful, and dedicated to their craft and driven to help companies build great software. If this sounds like you, read on.

About our product 

We develop the new product released in the market in 2020 - a brand new Cloud HR and Payroll services platform that helps small and mid-sized businesses focus on their core business and completely automate full-cycle HR management, everything related to their employee’s Time Tracking, Time Off Management, Payroll, Benefits, Taxes and Compensation calculations. We’re currently targeting the US market and plan to become “the most accurate payroll services provider”.

Team structure and workflow

There are 4 teams working on the project and allocated in Minsk, Ternopil, and Chicago. (You’ll be part of one of the development teams). A development team follows Scrum processes. Communication mainly consists of participation in regular scrum events and interpersonal communication via Slack. Jira and Confluence are the main tools used for supporting delivery workflow and maintaining project documentation.

Technologies and Tools

Backend: Java Core, Spring Boot, Spring Cloud, Spring Framework, Spring Security, Netflix Stack Microservices (Zuul, Eureka, Feign, Hystrix, etc.), JdbcTemplate, Hibernate, JDBC, JSON, XML, JUnit

Database: Postgresql, Aurora DB Cluster (based on Postgresql)

Cloud Platform: Amazon Web Services (AWS)

VCS: Git

Tools: Linux bash, Gradle, Intellij Idea, Docker, Jira, Confluence

Responsibilities

This is a unique opportunity for Senior Java Developers who want to grow to the Team Leader role. The team is professional, the process is well established, direct mentorship and support will be provided by senior colleagues, therefore starting in this role would be relatively easy and enough time will be granted to grow together with the team.

 As a Sr Java Developer you will have the following responsibilities:

  • Design, architect and develop software applications
  • Analyze requirements, collaborate with team members to produce thoughtful software designs
  • Provide accurate estimates on work items
  • Maintain coding standards and participate in peer code reviews
  • As a key developer serves in a mentor role to junior team members
  • Facilitate engineering operation process to ensure high-quality software solutions concerning engineering excellence
  • Assess solution architecture in terms of vulnerabilities and possible improvements

 As a Team Lead you will have the following responsibilities:

  • Proactively lead an Agile feature team towards predictable delivery with quality, follow the agreed way of working and ensure expected release cadence
  • Maintain high level of technical excellence and drive the team towards quality-first mindset, simple architecture and highest code quality
  • Align team with the other teams, identify and resolve impediments when necessary
  • Suggest solutions to business problems/processes that leverage technology to make efficiency improvements and better user experience
  • Specify non-functional requirements; analyze all requirements to determine design feasibility within time and cost constraints 
  • Lead architecture and design applying best practice software engineering including separation of concerns, high cohesion, low coupling, abstraction, encapsulation and information hiding, interfaces, and dependency injection
  • Lead implementation using defensive programming and exception handling, fault tolerance, design patterns, and best practices of Object Oriented Design (OOD), Domain Driven Design (DDD) and Object Oriented Programming (OOP) such as SOLID

Qualifications and Skills

  • Excellent interpersonal and teamwork skills
  • Experience with small teams that move fast - all members are expected to achieve maximum results with minimal direction
  • Strong knowledge of Java Core
  • Experience with scalable microservices architecture
  • Extensive experience working with Spring, Hibernate
  • Familiarity with message-broker software (RabbitMQ, etc.)
  • SQL, understanding of relational data modeling
  • Strong knowledge of OOP and design patterns
  • Knowledge of common algorithms and data representation models
  • Bachelor’s degree in the relevant field
  • Experience working in a Scrum environment

Engineering Practices

  • Static code analysis
  • Code review
  • Refactoring
  • CI/CD

Personal qualities

  • Great team player 
  • Strong organizational and soft skills
  • Ability to keep focus on the complete solution and delivering the business value
  • Ability to deal with ambiguity and drive independently or collaboratively with team on solutions, positive approach to challenges and focus on problem solving 
  • Intermediate+ English

We offer

  • Experience working with colleagues locally and abroad
  • Opportunities for self-realization working on challenging projects using new technologies and tools
  • Friendly team and enjoyable working environment  
  • Social and corporate events
  • Possibility for career development 
  • Participation in professional trainings, meetups
  • Medical & family care programs
  • Various sport activities coverage
  • Internal English courses provided by Forte Teacher
  • Comfortable and fully equipped workplace

Join us and be a part of our team!

0e21b388cf4bb539456dcb20c3c06b20
Представитель компании