Senior/Lead Java Developer

Responsibilities

— Writing backend code and tests (with an eye for full stack) as well as leveraging open source technologies to get reliable results;
— Improving code quality through testing, refactoring, peer-reviews, and pair programming while emphasizing simplicity;
— Championing software quality, innovation and appropriate technology choices;
— Working effectively in an agile team using Scrum, XPand Lean practices, e.g. participating in daily stand-ups, planning sessions, showcases and retrospectives;
— Collaborating with business stakeholders and internal users to design and deliver products that attract new customers and keep them coming back;
— Writing end-to-end user stories that steer a technical design that can be iteratively developed by the entire team;
— Performing root cause analysis to ensure that mistakes are properly understood and not repeated;
— Contributing to coding standards and guidelines a swell as setting a good example of adhering to them;
— Standing by your solutions to ensure that both you and the team have the tools and ability to support its operation after hours.

Requirements

— Extensive knowledge of Java, Spring and associated technologies: JUnit, Web Application Servers (e.g. Jetty/Tomcat), Gradle/Maven/Ant;
— Strong knowledge ofMySQL and writing optimized database queries;
— Thorough understanding of architectural software concepts, Object-Oriented and Functional programming, MVC/MV* architectures, asynchronous server communication;
— Experience in the design and development of RESTful web services and JSON handling;
— Able to use Git and understand distributed version control strategies;
— Software craftsman, with a rigorous and disciplined approach to writing simple and effective software but not afraid to learn from failure and tell others about mistakes;
— Knowledgeable in web software architectures and design patterns;
— You champion agile principles and are a strong advocate for Continuous Delivery, TDD, Refactoring and Pair Programming;
— Familiar with using a tracking system such as JIRA;
— Have an aptitude and willingness to learn the business domain and new technologies;
— A genuinely nice person, opinionated but humble enough to work with anyone.

Desirable

— Familiar with Groovy, Spock, Hibernate, Spring Boot;
— Have used cloud services like AWS orGoogle App Engine;
— Experience of integrating backend services with NodeJS, Angular, Ionic or a similar framework for mobile site development;
— Experience of using Google Analytics and logging services like Datadog and Splunk to track product usage and drive features;
— Knowledge of multi-threaded programming and concurrency;
— Experience using virtual services like Docker to automatically build new environments for development and testing;
— Track record of delivering scalable applications that are performant under high traffic volumes and leverage aCDN like Fastly;
— Comfortable working in a Linux environment with scripting languages;
— Interested in full stack development and a dev-ops approach to delivery.

Personal skills

- Self Motivated team player;
- Reliable person in development;
- Keen to do things better;
- Strong communication and problem solving skills;
- Product goals-oriented;
- Team player.

You will get​

- Working in a product company with a dynamic environment and several projects;
- Act and improve. Your ideas for improvements implementation;
- Team of motivated professionals;
- Continuous self-improvement and growth, including certifications and courses;
- Medical insurance;
- Competitive salary and Bonuses;
- Corporate events and fun team-building activities..

Apply Now