Senior Software Engineer

Job Title

Location: Fountain Street, Manchester

Rentalcars.com is part of the third largest e-commerce company in the world (Amazon and Alibaba are bigger) and we are the world’s largest car hire booking service, arranging over 7 million rentals a year in 49,000 locations in 167 countries across 40 languages.  Our mission is “Helping people experience the world” and our business and market sector is growing rapidly.

Engineering is a multi-skilled group of over 150 people responsible for providing the technology to enable the Rentalcars.com business.  It is a fast paced, dynamic, exciting and driven environment providing services on a 24x7 basis.  We provide all the touch points for our online customer experience through a market leading app, a great web site and all the software services and business systems to manage our customers and products.   Our goal is to create a great customer experience across all platforms which help us deliver growth for our business. 

We have a great journey ahead and our vision is to radically change the working practices to realise our ambition of being a “World Class” engineering function and the “Technology Employer of Choice” in the Northwest and beyond.  Make no mistake we have a challenging journey ahead but we are committed to delivering a great customer experience across web, mobile, call centre and partner channels and this is where you could fit in.

Where we are going

  • Cross functional agile teams who own their products in a Continuous Delivery DevOps environment
  • Revolutionise our online customer experience through a great web site and mobile app
  • Data driven decisions using Kibana, Hadoop, monitoring, Big Data, MI and MVT testing
  • Continuous improvement, keeping it simple and developing the team
  • Great engineering practices with a focus on TDD and BDD principles and a strong focus on non-functional requirements at the beginning rather than an afterthought
  • Decoupled service orientated architecture with resilience and availability built in

What we offer in return

  • Ownership of your work and a great technical challenge
  • A great new office to work in the heart of Manchester
  • Great facilities including subsidised canteen and Starbucks, free breakfast & fruit and cycle hub
  • An exciting and dynamic place to work
  • 25 days paid holiday plus bank holidays
  • Great discounts on car rentals and other group benefits
  • Opportunity to shape the future of the team
  • Software development kit that works

Key Responsibilities

  • Take the lead on design and development of features
  • Lead and coach other Engineers where required
  • Write high quality robust code including tests
  • Build, design and deliver high quality solutions in line with guidance and best practices of the department
  • Strong sense of ownership and the quality of the solutions you produce
  • Adhere to the defaults principles for Architecture, quality and non-functional requirements
  • Collaborate with the team and others to deliver high quality solutions
  • Design and develop reusable libraries, APIs and code that are easy to maintain, understand and re-use
  • Learn new technologies and keep abreast of existing technologies and be able to apply these to your work
  • Contribute to the evolution of best practices of the department
  • Write, review and take responsibility for clear, concise and comprehensive technical documentation
  • Supporting live products in a DevOps environment
  • Have fun

Skills we are looking for

We are looking for a superb and enthusiastic Senior Software Engineer who will push the boundaries on engineering brilliant solutions and contribute to shaping our new future.  We expect you to have the energy and passion to deliver using a whole range of technologies and have a solid understanding of engineering principles.  As a minimum, we expect all our Engineers to have:

  • A solid understanding of web development and web technologies
  • A solid understanding of how the web works starting at the request through to the response
  • A solid understanding of design patterns and frameworks such as MVC or Spring
  • An understanding of Continuous Integration, Continuous Delivery and Agile
  • An understanding of major browsers (including dev tools) and platforms (Linux, AWS)
  • A solid understanding of security principles and secure coding
  • A proficient in writing good quality object-oriented code using that is simple, fast under load and robust

We have a large diverse technology estate and therefore our Software Engineers typically work in one of the following areas but are also free to move between areas as part their career development and aspirations:

Web Development

Developing features for our web site across mobile, tablet and desktop.  Our web site is the high-volume site handling millions of searches and bookings a year with a strong focus on A/B testing.

  • Highly proficient with HTML 5, AJAX, Bootstrapping, XHTML, HTTP, JQuery, JSON and XML
  • Solid understanding of styling and applying design to web pages using CSS
  • Highly proficient with JavaScript frameworks such as Node.js, React.js and Angular.js
  • Highly proficient with the use of JSP and Java
  • Experience of using Spring/Struts

Service development

Developing services and components within product domains that do not have public facing web site components for example our Search and Pricing Engines.

  • Highly proficient with the use of Java or PHP
  • Solid understanding of web services and REST based APIs using JSON and XML
  • Proficient with database technologies such as MySql, SQL Server
  • Solid understanding of domain driven design
  • Solid understanding of SOA
  • Solid understanding of ORM technologies such as Hibernate

Full Stack Development

  • Web Development & Service Development

Other beneficial skills

  • Solid understanding of asynchronous systems and messaging for example RabbitMQ
  • Quality first mind-set for writing code using techniques such as TDD or BDD
  • Solid understanding of Agile practices
  • Commercial experience in an e-commerce background and A/B testing
  • Cloud technologies such as AWS and container technologies such as Docker
  • Solid understanding or knowledge of web server technology such as Apache or Tomcat