Senior Scala Software Engineer London

Senior software engineer with extensive experience in designing, building, and operating large-scale distributed systems across finance, media, and cloud platforms. Strong background in functional and full-stack development with a focus on Scala, Java, cloud-native architectures, and event-driven systems. Proven track record delivering high-traffic, resilient solutions using modern Agile practices, CI/CD, and infrastructure as code. Experienced in mentoring teams and driving architectural modernization initiatives.

Skills

  • Akka
  • Angular
  • Ansible
  • AWS
  • BDD
  • BigQuery
  • Cassandra
  • Cats
  • CI/CD
  • Cloud Functions
  • CQRS
  • DDD
  • Docker
  • DynamoDB
  • Event Sourcing
  • GCP
  • Git
  • GitHub
  • GitLab
  • GraphQL
  • Groovy
  • Http4s
  • Java
  • javascript
  • Jenkins
  • Kafka
  • Kinesis
  • kotlin
  • Kubernetes
  • Lambda
  • Microservices
  • MongoDB
  • MySQL
  • Node.js
  • Oracle
  • Play Framework
  • PostgreSql
  • Python
  • React
  • Redis
  • REST
  • S3
  • Scala
  • Spark
  • Spring Boot
  • TDD
  • Terraform
  • TypeScript
  • ZIO

Experience

Aug 2025 - Sep 2025

Cloud Coach / Consultant at Cloud Coach

Short-term consultancy engagement focused on improving cloud adoption and technical maturity across engineering teams. Provided hands-on coaching, architectural guidance, and infrastructure modernisation using AWS and GCP.

– Delivered technical workshops and pair-programming sessions to upskill teams in cloud-native, serverless, and DevOps practices
– Designed cloud reference architectures supporting microservices migration and CI/CD automation
– Implemented best practices for cost optimisation, security, and observability

Aug 2023 - Aug 2025

Senior Software Developer at Bank of America

Settlements Platform – a suite of components and processes supporting end-to-end settlements lifecycle management.

– Developed a high-throughput Settlement Obligations system using Scala, Kafka, and React
– Implemented CQRS and event-sourcing patterns leveraging an actor-based back-end architecture
– Automated deployments using Ansible and implemented CI/CD pipelines with custom Groovy scripts
– Designed and maintained a microservices-based architecture
– Applied Domain-Driven Design (DDD) and Behaviour-Driven Development (BDD) using Cucumber for Scala
– Modernised legacy internal tooling by migrating static HTML/jQuery/AJAX interfaces to React, introducing configurable UI components, input validation, and comprehensive unit and integration test coverage

Jan 2023 - Aug 2023

Mentor / Full Stack Developer at Sky

– Mentored junior developers (10+) through workshops, pair programming, presentations, and technical demos to accelerate skill development
– Automated infrastructure provisioning using Terraform and implemented CI/CD pipelines
– Increased test coverage by introducing automated acceptance testing with BDD frameworks (Python Behave, terraform-compliance)
– Delivered full-stack development of a FinOps portal using BigQuery and Looker to analyse cloud spend by cost centre, enforce budget accountability, and identify cost-optimisation opportunities
– Implemented serverless functions and cloud-native workloads across GCP and AWS (Cloud Functions, AWS Lambda)
– Built and maintained services and user interfaces using Python, Node.js, and React

Jun 2022 - Jan 2023

Full Stack Developer at Credit Karma

– Delivered full-stack development for large-scale financial platforms serving UK and Canadian markets
– Built and maintained integration services with multiple financial partners to personalise and manage customer offers using Java, Spring Boot, Scala, Finagle, ZIO, and Node.js (TypeScript)
– Implemented customer-facing UI components and widgets using React, TypeScript, and JavaScript, supporting production usage by millions of active users

Jan 2022 - Jun 2022

Senior Software Engineer at Kaluza

– Developed a backend payments and transactions platform integrating with multiple third-party systems
– Built and deployed new microservices using Scala, Kafka, and AWS to replace legacy systems across UK and APAC regions
– Automated infrastructure provisioning, deployment, and monitoring using Terraform

Aug 2020 - Apr 2021

Senior Software Engineer at Y-Tree

– Supported company-wide migration to a new system architecture
– Introduced and established Event Sourcing, CQRS, Domain-Driven Design (DDD), and Behaviour-Driven Development (BDD) practices
– Delivered organisation-wide technical training and courses, including for distributed and remote teams
– Contributed hands-on to microservices development using Kotlin and Kafka

Aug 2019 - Aug 2020

Full Stack Software Engineer at Convex

– Established delivery processes and ensured execution within an agile environment
– Designed, evolved, and governed system architecture
– Implemented CQRS and event-sourcing patterns on AWS using Kinesis and DynamoDB
– Delivered hands-on full-stack development across frontend, backend, and big data processing layers
– Built and operated serverless applications on AWS
– Produced UX designs and wireframes to support product development
– Led and managed development teams

Aug 2018 - Aug 2019

Full Stack Developer at Leonteq

– Led the redesign of a blotters service for managing and displaying price requests and history
– Simplified system design and modularized components
– Eliminated external dependencies and single points of failure
– Increased component test coverage from 12% to 89% and improved overall testability
– Introduced integration and end-to-end tests previously limited by system complexity
– Automated testing, including frontend tests using Protractor, Selenium, and Cucumber
– Contributed to multiple other company services across various technologies and programming languages
– Delivered short technical courses on pair programming, Kanban, and BDD (including for international teams in Singapore)

Mar 2018 - Aug 2018

Senior Software Developer at BSkyB (Now TV)

– Developed backend services using Scala, Play, Akka, Cassandra, and MongoDB
– Enabled continuous delivery pipelines with Kubernetes, Docker, AWS, and Jenkins
– Operated within a Kanban workflow for iterative development
– Collaborated with technical analysts and QA teams to define backlog items and acceptance criteria

Sep 2016 - Mar 2018

Senior Software Developer at Bank of America

– Developed a high-throughput Settlement Obligations system using Scala and Kafka
– Implemented CQRS and event-sourcing patterns with actor-based back-end architecture
– Automated deployments with Ansible and created CI/CD pipelines using Groovy scripts
– Designed and maintained a microservices-based architecture
– Applied Domain-Driven Design (DDD) and Behaviour-Driven Development (BDD) using Cucumber for Scala
– Contributed to a React-based error reporting tool to notify users of issues during transaction processing

Sep 2015 - Sep 2016

Full Stack Developer at Credit Suisse

– Delivered full-stack development and maintenance using Scala, Node.js, React, and AngularJS, including redesign of existing projects
– Implemented MapReduce with Spark for file-based storage and processing, improving performance and reducing system complexity
– Collaborated closely with end-users under short deadlines and frequent iterations, ensuring rapid and reliable feature releases
– Applied Agile practices including pair programming, Test-Driven Development (TDD), and Behaviour-Driven Development (BDD)

Jan 2015 - Sep 2015

Senior Scala Developer at Net-A-Porter

– Mentored a team of 10+ developers in migrating from a legacy monolithic system
– Introduced Scala, Agile development practices, and Continuous Delivery
– Delivered company-wide workshops on Scala, TDD, BDD, pair programming, and Agile methodologies
– Developed services in Scala across multiple teams and technology stacks
– Designed a new architecture to decompose the system into smaller, decoupled, service-oriented, and scalable components
– Collaborated with DevOps engineers to:
– Configure load balancers and NGINX for client certificates and SSL termination
– Set up Redis for failover, backups, and persistence
– Implement CI/CD pipelines using Jenkins and Bash scripts
– Automate end-to-end testing
– Contributed to Node.js, Perl, and AngularJS projects

Aug 2014 - Jan 2015

Senior Agile Developer at BBC

– Conducted polyglot software development using Java, Scala, and Node.js
– Contributed to re-architecting the platform into decoupled, highly cohesive microservices
– Developed RESTful and asynchronous web services
– Applied Continuous Delivery practices, supporting multiple live releases per day
– Designed Redis data structures and configured CI/CD pipelines and AWS infrastructure

Nov 2012 - Feb 2014

Senior Agile Developer at BBC

– Contributed to the design and development of applications focused on fault tolerance, high availability, and disaster recovery
– Implemented Scala components using Functional Programming and Reactive Programming principles for event-driven, scalable, and resilient systems
– Developed Scala modules with Play Framework, leveraging single-threaded asynchronous I/O for dependent services
– Applied Akka Actor model for concurrency in Scala modules
– Built highly scalable and fault-tolerant Java modules for AWS-based services
– Managed and utilized AWS infrastructure to support project deployment and operations

Jul 2011 - Nov 2012

Agile Developer at BSkyB

– Migrated projects to a resource-oriented, RESTful architecture to enable high-performance, optimized services
– Implemented composite resources, in-memory caching (Ehcache), and optimized persistent connections, improving system responsiveness for limited-resource users (e.g., mobile devices)
– Applied Behaviour-Driven Development (BDD) testing using adapted third-party libraries
– Enhanced QA processes by developing automated testing tools, reducing manual tests and enabling reliable, repeatable end-to-end testing
– Developed server-side services with MongoDB (NoSQL)
– Operated within an Agile environment, applying Scrum, BDD, TDD, pair programming, code reviews, and continuous integration

Jun 2007 - Jun 2011

Software Engineer at MilSOFT

– Applied Agile and Scrum principles across development processes, including daily stand-ups, planning, code reviews, sprint retrospectives, and two-week iterations
– Practiced Test-Driven Development (TDD) at all system layers using JMock and Mockito, and conducted performance/load testing with JMeter
– Utilized Behaviour-Driven Development (BDD) for acceptance testing via Fitnesse
– Employed pair programming as a standard practice
– Designed and implemented RESTful APIs and developed/provided both SOAP and REST web services
– Worked with both NoSQL (Cassandra) and RDBMS (Oracle) databases
– Built a stubbing framework using Scala and functional programming techniques
– Implemented continuous integration pipelines using Jenkins/Hudson and Maven

Education

Education icon
2008 - 2010

m.sc. software engineering at METU Technical University

Education icon
2003 - 2007

b.sc. computer science & software engineering at Hacettepe University

Education icon
2004 - 2008

bba in business at Anadolu University

CTA resume
CTA resume