We’re hiring engineers who are passionate about solving real-world problems and empowering both developers and end-users to work optimally. If you’re motivated to develop reliable, performant, and scalable systems, and to design robust APIs and primitives, this role offers the opportunity to make a significant impact on our products and the people who use them.
Frontline
Foundry Software Engineers may be offered the opportunity to Frontline, an exclusive program unlike any other. This unique, short-term assignment involves being embedded with customers, allowing you to work directly with users and gain firsthand insight into how our products are used and the challenges our customers face. Unlike traditional engineering roles, Frontline immerses you in complex, ambiguous problems, empowering you to deliver impactful solutions across some of the world’s most important industries and institutions.
Some of our most successful products were built on the factory floor, addressing real-world problems for the world's most important institutions. These products were developed by some of our most successful product engineers, who began their careers in roles aligned with Frontline responsibilities, gaining a deep understanding of both our technology and our customers.
Frontliners operate across a broad spectrum of responsibilities, much like a startup CTO. They work in small teams to own the end-to-end execution of high-stakes projects. This spectrum ranges from discussing architecture and building custom web apps to conducting workshops with users and strategizing with customer executives. No two days are alike, as each day is diverse and impactful. By witnessing how customers engage with Foundry and experiencing these pain points firsthand, you’ll gain unique insights that feed directly back into our development process, helping to refine and enhance our products.
- Core Responsiblities
- Architecting, developing, and maintaining high-performance, scalable backend services that underpin our our operational data and AI systems
Maintaining high coding standards through the development of guidelines, active participation in code reviews, and fostering a culture of continuous improvement and knowledge sharing among your team
Building robust APIs for use by front-end developers and interfacing external systems, and collaborating with front-end developers to integrate user-facing elements with server-side logic
Designing efficient data structures and algorithms to manage large-scale and high throughput data
Optimizing applications for speed and scalability through performance analysis
- Actively improve user workflows by collaborating with cross-functional teams, ensuring seamless experiences across product boundaries and a cohesive user experience
- Technologies We Use
- Different backend languages, including Java, Rust, Python and Go
Distributed systems technologies such as Kafka, Cassandra, Elasticsearch and Spark
Docker and Kubernetes for containerisation and orchestration
- Industry-standard build tooling, including Gradle and GitHub
- What We Value
- A deep understanding of server-side logic, efficient data handling, and distributed systems
Strong focus on creating user-oriented workflows and solutions, crossing product boundaries to deliver cohesive and solid user workflows that ensure a seamless and intuitive user experience
Experience building high-quality software in a fast-paced CI/CD development environment
Ability to work collaboratively in teams of technical and non-technical individuals and understand how technical decisions impact the people who will use what you're building
Skill and comfort working in a constantly evolving environment with dynamic objectives and iteration with users
- Active UK Security clearance, or eligibility and willingness to obtain a UK Security clearance is beneficial but not necessary
- What We Require
- Experience in designing and developing features and improvements, as well as supporting and maintaining, live backend systems
In-depth understanding of data structures, system architecture, API development for microservices frameworks, distributed systems and other backend-related concepts and best practices
Engineering background in Computer Science, Mathematics, Software Engineering, Physics or similar field
Strong coding skills with demonstrated proficiency in programming languages, such as Java, C++, Python, Rust, or similar languages
Strong written and verbal communication skills and ability to iterate quickly with teammates, incorporating feedback and holding a high bar for quality