Résumé
Skills
Languages & Tools: Java, TypeScript, Git, Linux, npm, Yarn, Docker, Oracle DB, PostgreSQL, H2DB
Frameworks/Libraries: Spring Boot, React, Angular, Mockito, JUnit, TestNG, Jest, Vitest, Testcontainers
Experience
Software Engineer, NatWest (Remote) Jan 2024 - Present
- Implemented per-environment feature toggles to conditionally enable features based on deployment context
- Refactored code, resolved security vulnerabilities, and improved code quality for easier maintenance
- Mentored junior developers on unit testing, helping them meet test coverage requirements
- Improved accessibility of a React app, as measured by tools like Evinced and verified via screen readers (NVDA, Narrator) and keyboard navigation, by applying accessibility best practices
- Increased test coverage by simplifying scheduler implementation, improving their testability
- Worked in the Open Banking PISP (Payment Initiation Service Provider) team, developing and maintaining APIs that enable secure payment initiation in compliance with PSD2 standards
- Enhanced payment initiation flows and transaction monitoring, improving reliability, traceability, and performance
Graduate Software Engineer, FDM Group (Client: NatWest, Remote) Sept 2021 – Jan 2024
- Improved microservice logging by adopting structured, consistent logging practices, reducing debugging time
- Created a Python script to simplify microservice management, reducing time spent on manual command execution
- Increased microservice code coverage to over 90% by developing extensive unit tests
- Collaborated in a globally distributed team environment with cross-functional developers
- Enhanced payment processing services handling SWIFT MT and ISO 20022 message formats, improving message parsing, validation, and transformation accuracy
- Implemented and maintained message routing logic and error handling to ensure compliance with internal and external payment standards
Projects
Spring Security App
- Full-stack app using Spring Boot, React, Spring Security (with JWT and cookie-based auth), and Docker (PostgreSQL, pgAdmin)
- DAO implementations using JPA, JDBC, and in-memory lists
- Integrated email notifications for registration and password reset events
- Custom Spring Security configuration with cookie-based authentication
- Tested using JUnit (unit) and Testcontainers (integration)
cebo.ooo
- Personal website built with vanilla HTML, CSS, JavaScript; uses Prism for code syntax highlighting
- Python scripts for minification, cache busting links and file names, link validation, templating reusable HTML elements, QR code generation, stripping metadata from images, nesting templates, etc
NixOS Configuration
- Flake-based NixOS setup for multiple hosts with separate home-manager configs
- Includes support for overlays, custom modules/packages, and LUKS-encrypted ext4 partitions
- Provides reusable configurations for hosts and users
Education
University of South Wales – MComp Computer Science Aug 2020
