Senior Java Developer for Thomas Cook

Kyiv, Amosova, Ukraine

Apply

The Thomas Cook Group is the oldest and best known name in leisure travel with a history of innovation that started in 1841. Then Company is proud to serve the 19 million customers who chose to travel with TC each year and, are focused on transforming their business so that they can serve even more customers in ways that deliver better holiday dreams.

Thomas Cook is supported by 21,813 employees and operates from 15 source markets; it’s a leading company(by revenue) in all its core domains. Thomas Cook Group plcʼs shares are listed on the London Stock Exchange (TCG).

The Companyʼs very essence is to deliver inspiring personal journeys as the trusted pioneer in global travel. The core of our strategy is to deliver a high-tech, high-touch approach and being there for their customers wherever, whenever and however they want to connect with Company. TC Group is building the capability to support personalized customer interaction through micro-segmentation, social media integration, and powerful recommendation analytics.

Read more about the client

Description

On behalf of Thomas Cook, Ciklum is looking for Senior Java Developer to join its Kyiv team on a full-time basis. This is a great opportunity to be part of an exciting team that delivers a standard-bearing product within the travel industry.

As a Senior Java Developer, you will be part of a digital technology team involved in designing and building large java applications based on a micro-service architecture that scale to millions of customers, billions of pounds in revenue.

The team is responsible for integration solutions to be used by a number of internally developed applications. The work will consist mostly of writing back-end micro-services which will integrate external and internal services and the integration of business logic. This can vary from internally used systems and APIs to services used within the company (finance systems, external content systems) and external partners (third party systems, affiliates, etc).

Most work will be back-end related, however, we also deal with front-end tasks (quite rarely) to maintain our Business Tools.

Our team consists of TL, Developers, QA, DevOps. We work by scrum/agile methodology. Our sprint iteration is 2 weeks and we release at the end of each sprint.

Responsibilities

  • Designing and building Java applications that scale to millions of customers, billions of pounds in revenue and thousands of requests per millisecond
  • Providing thought the partnership with business and product owners in translating high-value business ideas into beautiful and innovative software solutions
  • Providing technical excellence and leadership on the team to ensure quality first mindset, simple architecture and highest code quality
  • Writing great software adhering to agile software engineering practices (e.g., DRY principles, TDD, continuous integration, automated tests, etc.)
  • Reviewing code and providing mentorship to other developers in the agile team

Requirements

  • 5+ years of general programming experience in java
  • Experience designing and building Java applications based on micro-service architecture
  • Experience in solutions based on enterprise integration patterns.
  • Expert in writing and deploying large scale java codebases with significant experiences in building/maintaining continuous integration and deployment environments (e.g., Jenkins, Travis-CI, Chef/Puppet, Cruise Control, etc.)
  • Strong background in test driven development, automated testing (jBehave) and other software engineering best practices (e.g., performance, security, BDD, etc.)
  • Significant experiences developing RESTful API services (HTTP, caching), SOAP services, message-oriented middleware (RabbitMQ)
  • Experience in using MySQL
  • Experience in using open source technologies and eager to learn new technologies
  • Experience with AWS services
  • Experience or intention to learn Nodejs

Desirable

  • Knowledge or experience in other JVM languages (Groovy, Scala, Clojure)
  • Knowledge or experience in Functional programming

Personal skills

  • Enjoys and gets energized by complex problem solving and ability to push the innovation on solutions
  • Excellent communication skills with the ability to influence senior business, developers and IT executives on agile Quality culture and best practices

What's in it for you

  • A unique working environment where you communicate and work directly with colleagues abroad on a day-to-day basis
  • Career opportunities within big and well-known travel provider from Europe
  • Possibility to work in a big and successful company
  • Possibility to work from home one day per week (after the trial period is passed)
  • Long-term employment with 20 working-days paid vacation and other social benefits