Senior Java Developer
Travix
2021-12-03 09:07:29
Barkingside, Greater London, United Kingdom
Job type: fulltime
Job industry: I.T. & Communications
Job description
Travix is one of the leading global online travel agencies, operating with four brands: CheapTickets, Vliegwinkel, BudgetAir and Flugladen. In 2020 we took our next step becoming part of the Trip.com Group family, one of the largest online travel companies in the world, consisting of Trip.com, Ctrip, Skyscanner, Make my Trip and Qunar.
Travix currently operates in over 40 countries expanding in 5 continents, so a global mindset comes natural to us. Our purpose is 'the next journey at your fingertips' which goes for both our customers and employees. We bring together passionate people, global partners, and an innovative platform to deliver the best end-to-end booking experience for our customers.
About the Team:
The Java team is split between London and Amsterdam and is part of the Travix development organisation. The development teams are continuously delivering new features in fully automated test and cloud deployments.
Currently, the agile teams work closely together to deliver web APIs with state-of-the-art technology like Elasticsearch, Redis clusters, Resilience4J circuit breakers, Java 11+, Spring Boot 2, Project Reactor, Functional Programming, Event-Driven Architecture. The London based development teams collaborate closely with the Amsterdam based development teams, and there are regular trips to visit the Amsterdam office.
About the role:
We develop web-based applications for our brands Budgetair and Cheaptickets that millions of travellers use to plan, book and experience trips they will remember forever. If you are a Java Developer seeking new and exciting challenges where you can make a real impact, you'll want to be a part of this.
Your challenge:
- Design and implement powerful, highly scalable, and reliable services
- Work with Product Owner(s), Development and Systems Engineering to design, develop, test and deploy world-class software
- Have a passion for bringing innovative ideas and functionality into production
- Participate in design discussions, and translate business requirements into technical tasks
- Be part of a dynamic, continuously delivering team using Agile development process
- Provide code reviews to assess overall code quality and flexibility, and the application of good object-oriented and functional programming techniques
The above are just a few of the responsibilities in this position. This position comes with the autonomy to introduce your own ideas and creativity to build a strong and solid technical environment.
Requirements:
A successful candidate must have proven experience in ALL the following:
- Clean code and best practices
- 4+ years of experience as a hands-on Java developer
- Java 8+
- Spring Boot 2
- Spring MVC
- REST APIs designing
- GIT
- Maven
- Microservices architecture
- Linux
In addition, the candidate must be able to demonstrate knowledge or experience in SOME of the tools below:
- Event-Driven architecture (Google Pubsub/Kafka/RabbitMQ)
- SQL (MySQL/PostgreSQL)
- Project Reactor
- R2DBC
- JPA (Hibernate)
- TDD
- Spring Data (JPA and/or JDBC)
- Caching solutions (Redis/Ehcache/Memcache)
- GraalVM
- Docker
- Kubernetes
- Helm
- CI/CD (Drone IO/Circle CI/Jenkins X, etc.)
- Cloud experience (GKE/AWS/Azure)
- AspectJ
We are looking for people with a flexible and results-oriented mentality who love to develop new things and are enthusiastic about their area of expertise!We think it's important you have:
- Experience with core Java technologies - multithreading, JDBC, J2EE, JMS, networking, NIO
- Experience with the Travel industry domain is a big plus
- Familiarity with Agile software methodologies
- A strong drive to learn new internet technologies
- Excellent communication skills
- Experience of working in a continuous delivery environment
- Must have experience in design and development of distributed, scalable and highly available systems (Microservices design patterns, Event-Driven Architecture)
- Write well designed, testable, efficient code.
- Design and develop high-volume, low-latency applications for mission-critical systems, delivering high availability and performance.
- Hands-on experience in designing and developing applications using Java EE platforms
- Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc.)
- Deep understanding of the Agile practices of TDD, Pair Programming, and CI/CD
- Understand the importance of creating highly readable and easily maintainable source code
- Pension
- Health care
- Life cover
- Commuting cost
- Hybrid flex work
- and more..
- Telephone call
- Video interview with manager
- Tech Test
- Tech video interview
- Offer