Experience
JP Morgan · Cloud Services · London
- Engineering lead across a collection of feature teams in Cloud Services, applied as a flexible senior resource where the organisation needs it most — adapting to diverse problems across the platform
- Driving engineering standards, delivery practices, and cross-team design governance at senior principal level
- Uses every available opportunity — code reviews, architecture discussions, pairing — to develop engineering practices and raise the standard of the craft across teams
- Gives teams the space to make decisions and grow, whilst holding them accountable to doing the right thing
- Strong advocate for collaboration: pair programming and standing in front of a whiteboard together to work through problems and find the best solution
- Actively seeks out people with complementary skills and perspectives — no ego about where the right answer comes from
- Very hands-on: leads from the code, not from a distance
Bank of America Merrill Lynch · Global Markets Securities Technology · London
- Lead engineer on the BAML securities straight through processing system in the global securities middle office
- Transformed the development culture from manual testing and slow release cycles to CI/CD and automated testing — short iterations, sustainable pace, frequent releases
- Introduced automated acceptance testing and Specification by Example using Cucumber
- Introduced Scala as the strategic programming language across global markets securities back office
- Built a real-time inventory management system using event sourcing and CQRS
- Designed a reverse proxy infrastructure for rapid, secure web application deployment
- Led standardisation of server provisioning and security infrastructure, massively reducing effort and lead times
- Built a data platform to support analytics and machine learning across securities data
- Developed junior talent through coaching and pair programming
UBS Investment Bank · Advisory Technology · London
- Technical lead for the bank's strategic CRM and Research systems across Java, C#, C++, SQL, and JavaScript
- One of the leaders introducing agile methods including Scrum to the department
- Introduced automated testing across the CRM and research platform
- Built and maintained a web application firewall infrastructure protecting externally-facing bank systems
- Migrated the bank's CRM from a vendor product to a fit-for-purpose proprietary solution
- Re-architected analytics integration from Microsoft Office tools into equity research systems — over an order of magnitude performance improvement
- Worked across telephony integration, network programming, load balancer infrastructure, and research matching systems
Various — defence, industrial, and commercial
- Hardware engineering and embedded systems in defence electronics
- Unix device driver development for integration with industrial machinery
- Concurrent software design for robotic systems
- Real-time sampling and control systems
- Low-level network programming including UDP/SNMP
- Sybase DBA and consultancy