Summary
Lead engineer specialising in enterprise-grade backend and distributed systems across financial services, trading platforms, payments, streaming and retail. My depth is in market infrastructure: order matching engines, FIX connectivity and Alternative Trading Systems.
I design full-lifecycle systems, from clean API-first interfaces to scalable backend architectures and cloud-native infrastructure, grounded in Domain-Driven Design, Test-Driven Development and Clean Code. I augment this with an AI-first workflow (Claude Code, Codex) to accelerate delivery while keeping tests, code review and architectural ownership as the quality gates.
Experience
Monark Markets
Lead Software Engineer
Contract · part-time to Apr 2025, full-time since
- Monark enables brokerage and wealth platforms to offer private-market investments via API. I joined at inception as the second engineer, after Monark acquired LEX Markets' software and legal assets including the original matching engine I helped build, and lead its core matching engine and trading infrastructure.
- Designed and built the back-office platform: positions, lot and lot-allocation, settlement with Transfer Agents, and Omnibus for registered funds.
- Delivered features on the C# / .NET primary-offerings platform, including SPV and Pre-IPO offerings.
- Integrated with FINRA ORF, Apex Clearing, and nTier for CAT reporting. Also integrated with UMS (Nasdaq's matching engine) for trade execution.
- Collaborated with product and legal teams to align platform capabilities with regulatory frameworks.
- Building integrations with third-party data providers such as Yahoo Finance and Sacra to enrich private market data.
- AI-augmented delivery: I operate a custom agentic workflow on Claude Code and OpenAI Codex, with bespoke slash-command automations (planning, code review, endpoint scaffolding, DB migrations), a structured project-context (CLAUDE.md) system that steers the agents, and large-context whole-repo reasoning. An iterative, test-first loop keeps me as the quality gate, and has driven a marked drop in defects and smoother cross-system integrations.
Sky
Senior Software Engineer
Contract
- Redeveloped the Bookmarking Service, a high-traffic system handling up to 2,500 req/s, using Java 17 and Spring Boot.
- Built and deployed services on Kubernetes, leveraging Kafka for event-driven processing and scalable storage.
- Contributed to the modernisation of a core database-backed service for storing critical user activity.
- Ensured high availability through proactive monitoring using Prometheus, Grafana, and Alert Manager.
- Identified and resolved bottlenecks with Gatling performance testing.
LEX Markets
Lead Software Engineer — Trading Systems
Contract, then employee
- Responsible for the full lifecycle of an Alternative Trading System (ATS) for a New York-based startup.
- Designed and implemented an Order Matching Engine using CQRS and event-driven architecture. This engine was later acquired by Monark and became the core of its platform.
- Built a Market Data service publishing real-time events to subscribers.
- Developed a FIX Adapter service and integrated the Investor Platform with the Order Matching Engine.
- Integrated with Nasdaq's UME, FINRA ORF, and Apex Clearing systems.
- Implemented CI/CD pipelines with Terraform and GitHub Actions.
National Trust
Senior Java Developer
- Designed new architecture using AWS DynamoDB and S3 for the National Trust Revenue applications (Join, Renew, Donation, MyNT).
- Created new services for the Donate application and developed features for existing services.
- Mentoring of junior members and apprentices.
- Strong focus on quality: clean code, pair programming, TDD, and BDD with Cucumber and Cypress.
Appsbroker Consulting
Senior Java Developer
- Worked on Project Sentinel delivering a MiFID II compliant solution to a consortium of global banks with Google and Adaptive.
- Integrated the compliance service with Trax Markets and TRADEcho via FIX protocol.
- Implemented the events service aggregator for trading events into BigQuery.
- Implemented the reference data REST API.
Visa Europe, Reading
Lead Software Engineer
- Delivered new services and propositions for Visa's innovation hub (Visa Europe Collab).
- Led the Checkout team for Visa's digital wallet, managing APIs for payment service providers and merchants, overseeing a team of six developers and three QAs.
- Played a pivotal role in re-architecting and redeveloping the system for scalability and performance.
- Provided leadership and mentoring to the Mobile team.
hibu / Yell, Reading
Lead Java Developer
- Member of the Platform/Architecture team for yell.com in the UK.
- Quality and performance improvement of a high-availability image store serving 12M+ requests/month.
- Key contact on creation of a new global platform for the business.
- Defined coding standards, canonical data model and versioning standards.
- Increased test coverage in core services to over 90%.
Cognito, Newbury
Technical Lead / Senior Developer
- Led a large number of projects designing, developing and delivering middleware services and customer integrations.
- Design and delivery of large transactional workflow management systems using Java EE (EJB3, Hibernate, JMS, TIBCO).
- Scrum master, mentored junior developers through pair programming.
- Delivered the largest customer project on time and on budget as Technical Lead.
Open Source
QuickFIX/J Spring Boot Starter
Simplifies FIX protocol integration with Spring Boot; used in production by trading platforms and financial institutions. GitHub
AssertJ-QuickFIX/J
Fluent, data-dictionary-aware AssertJ assertions for QuickFIX/J messages. GitHub
FixMock
WireMock-inspired mocking library for FIX sessions with a fluent Java DSL. GitHub
Education
Universidad de Sevilla
BSc, Software Engineering
Languages
Spanish — Native · English — Full Professional · French — Elementary