Senior Software Engineer - Big Data & Analytics

Senior Software Engineer - Big Data & Analytics
The role
This is an exciting and challenging role for an experienced Senior Software Engineer with a proven track
record to join Rightster's Big Data and Analytics development team in London.
You will be working with QA, Core Platform, DevOps, Web Development, and Video Player engineers
throughout the entire development lifecycle from requirements gathering through to deployment.
We are an agile software development team and are committed to continuous improvement. We run daily
stand-ups, encourage pair programming & collaboration, run end of sprint demos and retrospectives. We
pay more than just lip-service to the word “agile”.
Working within a strict test oriented development process you will take part in solutions design, write
code, unit tests, perform code reviews and use continuous integration to guarantee that nothing less than
high quality code is produced.
You will have a passion for technology and programming, and be naturally focused on delivering
excellence. You will thrive on problem solving, be aware of the evolving technology landscape and be
passionate about inspiring others.
You will will be responsible for implementing the data acquisition and analytics for the Rightster video
platform. We’re looking for people who have a good understanding of big data systems and a solid grasp
of key technologies including batch and stream processing, recommendation systems, dimensional data
warehousing, and reporting/visualization tools.
Key Responsibilities:
● Acquire data from a variety of third party systems
● Implement systems to transform and combine this data according to variable business
rules and within an agreed time frame
● Advise on integrations with third party providers to maximise the richness of Rightster
data package
● Ensure there are mechanisms in place for audit and quality assurance for incoming data
● Promote good data management and auditing systems to the wider business audience
● Research and implement best practices that drive standardisation and efficiency
● Help define an organisational data model/dictionary so there is a common vocabulary
● Work with product teams to help define, evolve, and prioritise requirements to
maximise business value
● Document technical specifications and designs using appropriate technologies such as
Key Skills
● Proven experience of developing big data solutions using technologies such as Hadoop,
Spark, Storm, and Samza for both batch and streaming analytical processing
● Good grounding in relational and nosql data stores
● Good software development practices including appropriate use of automated tests
● Optimise design and implementation for robust and performant systems. Designs must
be extensible and easy to evolve without being fragile
● Some experience with data migration in live systems preferable
● Well versed in ETL processes and dimensional modelling
● Experience with data reporting and visualisation techniques desirable
● Experience working with AWS technologies with special emphasis on data processing
● Agile development including Scrum and other lean techniques
● Experience with practical recommendation and fraud detection systems at scale is
highly desirable
● Experience in JVM-based languages including Java is essential
● Experience with Scala is desirable
Person specification
● Have a strong interest in working with big data to improve business processes
● Highly motivated individual with attention to detail with a strong focus on delivery to
tight deadlines
● A positive attitude to learning new techniques and languages
● Good problem solving and analytical skills and an attitude of perseverance
● Minimum three years' experience in data analysis and reporting
● Adapts well to rapidly changing work changing priorities and responsibilities
● Excellent communication skills with the ability to present and explain complex
problems/data clearly and concisely
● Ability to understand the big picture and easily break it into detailed tasks
● Able to prioritize and multitask accordingly in order to meet deadlines