Functional Programming Engineer

Functional Programming Engineer

Temporary 63000 - 77000 £ / year (est.) Home office (partial)
R

At a Glance

  • Tasks: Design and build reliable backend services using functional programming principles.
  • Company: Join a leading global banking organisation with a focus on innovation.
  • Benefits: Competitive rate, hybrid working model, and potential for contract extension.
  • Other info: Opportunity to work directly with business stakeholders and shape technical solutions.
  • Why this job: Make an impact in investment banking technology while collaborating with top engineers.
  • Qualifications: Strong functional programming experience, especially with Kotlin, Scala, or Clojure.

The predicted salary is between 63000 - 77000 £ per year.

Location: London

Working Model: Hybrid – 3 days per week in the office, with flexibility for the candidate to choose which 3 days they work onsite

Contract: 6-month rolling contract, with a further 6-month potential extension

Rate: Open to discussion based on the candidate’s expectations and experience

About the Opportunity

We are working with a leading global banking organisation on a high-profile Front Office technology programme within its Investment Banking / Capital Markets environment. We are looking for a genuinely senior, hands-on engineer to join a high-calibre engineering team developing and enhancing a business-critical platform used by Front Office teams. The team is particularly interested in engineers with a strong functional programming background and a solid understanding of modern software design principles.

Kotlin experience is highly relevant, but the team is also open to engineers with strong functional programming experience in languages such as Scala or Clojure who are willing and able to embrace Kotlin. This is a senior engineering role requiring strong technical depth, experience with Event Sourcing and Event-Driven Architecture, and the ability to work directly with business stakeholders.

Key Requirements

  • Strong functional programming experience and understanding of functional programming principles
  • Strong commercial experience with Kotlin, Scala, Clojure or another functional programming language
  • Willingness and ability to work with Kotlin where it is not already your primary language
  • Deep hands-on experience with Event Sourcing
  • Strong understanding of Event-Driven Architecture
  • Experience with CQRS and modern distributed systems
  • Senior/VP-level engineering experience
  • Experience working directly with Front Office / business stakeholders
  • Strong experience with TDD, XP practices and collaborative engineering
  • Experience with pair and/or mob programming
  • Cloud experience, ideally GCP, with technologies such as GKE / Cloud Run
  • Strong backend engineering experience building reliable, scalable and maintainable systems

What You'll Be Doing

  • Design, build and evolve highly reliable backend services
  • Develop systems using Event Sourcing and Event-Driven Architecture
  • Apply functional programming principles to software design and implementation
  • Work with Kotlin and contribute to a modern, highly collaborative engineering environment
  • Work closely with Front Office users and business stakeholders to understand requirements and shape technical solutions
  • Contribute to technical design and architectural decisions
  • Develop clean, maintainable and well-tested code using TDD
  • Work collaboratively through pair programming, mob programming and other XP practices
  • Support production systems where reliability, correctness and availability are critical
  • Help shape the engineering approach and share technical expertise across the wider team

What We're Looking For

We are particularly interested in senior engineers who bring strong functional programming expertise, rather than simply looking for candidates based on a specific technology stack. Relevant backgrounds could include:

  • Kotlin with strong functional programming experience
  • Scala / Scala-based backend engineering
  • Clojure
  • Other functional programming languages or environments, where the candidate has strong transferable engineering principles

The ability to demonstrate genuine Event Sourcing experience, strong engineering fundamentals and the ability to engage directly with business users will be particularly important.

Key Skills

  • Functional Programming
  • Kotlin
  • Scala
  • Clojure
  • Event Sourcing
  • Event-Driven Architecture
  • CQRS
  • Backend Engineering
  • TDD
  • XP
  • Pair Programming
  • Mob Programming
  • GCP
  • Front Office
  • Investment Banking
  • Capital Markets

This is a top-tier senior engineering opportunity for someone who combines strong technical depth with functional programming expertise, modern distributed-systems experience and the ability to work closely with Front Office stakeholders.

Functional Programming Engineer employer: Russell Tobin

As a Senior Kotlin Engineer at our client, you will join a dynamic and inclusive work culture that prioritises employee well-being and professional growth. Located in a vibrant area, the company offers comprehensive benefits including healthcare coverage, retirement savings plans, and unique perks like pet insurance and legal support, ensuring a rewarding work-life balance. With a commitment to equal opportunity and fair chance employment, this is an excellent place for talented individuals seeking meaningful and impactful careers.

R

Contact Details:

Russell Tobin Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Functional Programming Engineer

Get Involved in Open-Source Projects

Diving into open-source projects is a brilliant way to showcase your skills and connect with other developers in the community. Not only will you beef up your GitHub profile but you might also catch the eye of someone at Russell Tobin who values hands-on experience over just theory.

Attend Local Tech Meetups

Tech meetups are gold mines for networking and discovering job opportunities, especially in the fast-paced world of software engineering. Check out local listings for events in your area and don’t shy away from introducing yourself. This could lead directly to a temporary position at Russell Tobin!

Showcase Your Work Online

With temporary roles, it’s all about standing out in a short space of time. Create a portfolio website where you highlight your projects and skills. Talk about your code, and provide links to your GitHub repositories. This will not only demonstrate your abilities but will also make it easier for recruiters at Russell Tobin to see what you bring to the table.

Leverage Temporary Job Boards

Don’t forget to check specialised job boards for temporary software development roles. Websites like We Work Remotely or Remote OK often list short-term gigs that can be a perfect fit. Apply directly through our website as well, making sure your application is sharp—temporary roles can move fast!

We think you need these skills to ace Functional Programming Engineer

Functional Programming
Kotlin
Scala
Clojure
Event Sourcing
Event-Driven Architecture
CQRS

Some tips for your application 🫡

Show Off Your Tech Skills:Make sure your CV highlights your tech stack and any programming languages you’re proficient in. Include specifics about any frameworks or technologies you’ve worked with; they can make you stand out in the sea of applicants. It’s all about showing that you have the chops we need at Russell Tobin!

Portfolio 2.0:Since you’re applying for a temporary gig, it’s super important to showcase a portfolio that highlights your best projects. Include links to GitHub or any personal projects that demonstrate what you can do in a real-world environment. This gives us a taste of your style and your problem-solving approach!

Keep It Brief and Relevant:With a temporary position, we want to see your ability to hit the ground running. Be concise in your CV and cover letter; stick to experiences that directly relate to the role. Highlight any previous temporary roles or freelance gigs that show your adaptability and quick learning!

Tailor Your Cover Letter:Don’t just send a generic cover letter. Personalise it for Functional Programming Engineer at Russell Tobin! Mention why this temporary role excites you and how you see yourself contributing in the short run. Show us what you've got and why you're the one for this quick turn-around!

How to prepare for a job interview at Russell Tobin

Nail the Technical Skills

For a software engineering role, you'll likely face technical questions or coding tasks during your interview. Brush up on the relevant programming languages and frameworks that Russell Tobin uses, and don’t forget to practice some coding challenges on platforms like LeetCode or HackerRank. Showing your coding prowess can really make you stand out!

Prepare for System Design Questions

Even for a temporary role, having a grasp of system design principles can be crucial. Be ready to discuss how you would architect a software solution, including discussing trade-offs, scalability, and performance considerations. Having examples from previous projects can really show off your analytical thinking.

Demonstrate Your Adaptability

Since this is a temporary role, you'll want to emphasise your ability to hit the ground running. Highlight experiences where you quickly adapted to new technologies or teams. Let’s make it clear to the interviewers at Russell Tobin that you can learn on the job and deliver results in a short timeframe!

Show Off Your Portfolio

Make sure to have a portfolio or GitHub ready showcasing your projects. Having tangible evidence of what you've done—be it personal projects, contributions to open-source, or previous work—can convey how capable you are. Tailor this for what might interest Russell Tobin, so it's relevant and sparks conversation during your interview.