Java Engineer - Remote
Global market leader in the data technology are looking for brilliant, creative, curious, and experienced Java Software Engineers to join their applications team. You will work on a remote basis anywhere in the UK and be willing to travel to their Edinburgh hub once a quarter.
The team delivers internal and customer-facing SaaS applications for managing complex data campaigns and providing deep reporting, visualisation and analytics backed by big data and machine learning technologies.
You will help innovate, design, build, and support critical parts of their backend infrastructure. Their web applications are built using Java and Spring, with React and Angular on the frontend, but you may also be exposed to Python, Scala, and C++for offline and data components. With a strong Dev ops culture, you'll have end-to-end ownership of your domain and they talk as much about 'why' as 'what' and 'how'.
You'll work in cross-functional teams with data and frontend engineers, but also data scientists and others across the business. With soft boundaries between teams, you'll have opportunities to dip into other domains as much or as little as you'd like. You'll be someone who has a passion for delivering products that delight and astound customers and that have an enduring impact on the business. You'll focus on long-lasting agility in their technology and team, which almost always means practising Good Engineering and following Lean Development principles. And, of course, you'll enjoy being part of a team that supports each other through mentoring, brainstorming, and pairing up to solve ambitious challenges.
Innovate, implement, support, and iterate on their application infrastructure and online and offline codebases Support, mentor, and pair with other members of the team to advance the team's capabilities and capacity
Help identify and take advantage of new and innovative opportunities for commercial and technical growth
3+ years' experience as a backend developer and architect for complex, customer-centric web and offline applications
Advanced knowledge of Java and the Spring Framework
Mastery of RESTful API and web serving concepts
Familiarity with distributed systems and concurrency topics
Experience designing and implementing secure, highly scalable systems
Expertise with relational and non-relational database concepts
Excellent knowledge of data structures and algorithms at-scale
Mastery of debugging and optimising data-centric Java applications
Comfort with server-side Linux and cloud infrastructure
Knowledge of Good Engineering and when to go fast and when to go slow
Degree in Computer Science, Software Engineering, or similar
Experience with CI/CD, Jenkins, Docker, Kubernetes, Prometheus + Grafana
Knowledge of machine learning algorithms and how to implement them in production environments
Key Technologies they use (in no particular order):
This is a full-time, permanent position based in the UK. They have embraced home working and expect this to continue indefinitely, but occasional face-to-face meetings may be necessary in the future- from their HQ in London or our Engineering hub in Edinburgh.