Job Title: Senior Java Developer Role Type: Permanent Date: January 2020
Freesat is a joint venture between the BBC and ITV, providing UK customers with over 200 TV and radio channels, as well as On Demand and SVOD services. We reach over 2 million homes through a combination of set-top boxes and TV sets.
Freesat is continuously evolving the service to ensure that users receive the best possible subscription-free TV experience. Looking to the future, we are preparing for our next generation of STB and TV products, using latest technologies to enhance features and provide an experience that will keep us competitive for years to come.
Freesat has big ambitions and it’s an exciting time to join this small, vibrant company based in an attractive Central London location. This is a dynamic environment where innovation is rewarded and our agile environment means that we are constantly able to pursue new opportunities. We have a generous reward package including a competitive salary, performance related bonus, healthcare, pension and life assurance. Through our employee wellbeing package we encourage and enable sustainable living for physical and mental health, continuous personal and professional growth and balanced lifestyle choices for every member of our Freesat team.
This is a key role for Freesat, working within Freesat’s Technology team. The successful candidate will work with the existing senior engineers to assimilate knowledge on the platform. The ambition is for the role to evolve into a Lead position, focused on building and retaining a successful engineering team. So, we are looking for someone with leadership aptitude, who we can nurture and help realise their full potential. The job will ultimately, help the team achieve their highest potential as individuals and as a group.
Overall, the purpose of this role is to drive development and innovation at Freesat in its ambitious product and device roadmap; maintaining and improving existing STBs, TV and mobile products, whilst preparing for and executing the future device strategy.
• To create, evolve and maintain a robust platform.
• Become the technical authority on our cloud platform and help inform our overall technical direction.
• Formulate guidelines for development practices and oversee implementation.
• Oversee technical delivery ensuring the smooth operation of robust CI/CD pipelines and workflows.
• Work with Product to translate product requirements into architectural blueprints in line with our cloud microservices strategy and with Operations to formalise the deployment process;
• Support and, in future, lead the development team at a technical and organisational level, ensuring that design and best practices are followed to consistently deliver clean code in a lean and agile fashion;
• Hands-on coding. This will involve anything from proof of concept prototypes, implementation and upgrading microservices, to maintenance and support.
• Work closely with 3rd party software development partners and maintain this relationship.
• Become instrumental in improving and implementing Agile processes and ways of working.
• An energetic talented engineer with a solid background in Computer Science
• At least 5 years of experience in software development gained from delivering commercial-grade, cloud-native software products.
• Able to articulate and balance the risks in the software delivery process.
• A technical leader who has grown in fast-moving, agile environments and has the following skills and expertise:
Skills and Expertise
• 5+ years of commercial modern Java Development experience.
• Technical leadership experience or the desire to progress into a lead role.
• Ability to combine pragmatism with architectural integrity to support a growing business.
• Experience and skills to drive and assist a team towards an agreed direction.
• Experience designing complex multi-service architectures.
• Strong commercial experience with Containerised Java 8+ Microservices, Spring Boot, NoSQL Databases, Messaging/Pub-Sub, CI/CD, Docker, Git.
• RESTful API design principles.
• A passion for high-quality code and engineering practices.
• Good experience in TDD and BDD.
• Experience developing in a Mac or Linux environment.
• Shell scripting.
• Excellent communication skills.
• Knowledge of and experience of Agile development methodologies, particularly Kanban and Scrum.
• Bachelor’s degree in Computer Science, Engineering, or related technical field.
• Experience within TV/broadcast industry a strong benefit.
• Kubernetes strongly desirable.
• Event-Driven Architecture using Pub/Sub or Message Brokers.
• Experience with products involving development across software, middleware and hardware a strong benefit.
• Apache Cassandra
• GCP or AWS experience.
Personal Skills and Competencies
• A self-starter with the ability to perform in a high-pressure delivery environment.
• Strong communication skills with the ability to express ideas effectively, show thought leadership and make complexity simple for others to understand
• Strong time management and organisational skills
• Strong problem analysis and resolution skills, finding viable and pragmatic solutions to resolve issues quickly and efficiently
• An understanding of resourcing and budgeting, with experience making priority calls and recommending appropriate trade-offs when necessary
• Ability to build constructive working relationships both internally and externally
• Demonstrate clear ability to be a team player with an ability to work collaboratively in and across teams.
To apply for this role, please e-mail email@example.com attaching your CV, an application letter and proof of eligibility to work in the UK.