Skills and career

Experienced software engineer with a strong full-stack skillset grown through startup and corporate environments. Proven in developing and maintaining scalable microservices and APIs, leading integration projects, and collaborating with local, international and external teams. Adept at balancing user experience and business needs with code maintainability and security. Read moreChevron pointing down Education and interests >

Skills

Programming | TypeScript, Node.js, React, Jest, Ruby, Rails, RSpec, Elixir, SQL, Cypher, CSS, HTML

Infrastructure | Kafka, AMQP, PostgreSQL, GraphQL, REST, AWS, Heroku, Terraform, Fly.io, Render.com

Development | Git, CI/CD, TDD, Microservices, Monitoring, DB Design, API Design, API Docs, Mentoring

Qmee (acquired by Kantar in June 2022)
> Software Engineer | Jan 2023 - Present
Junior Software Engineer | Feb 2020 - Dec 2022

Grew startup to profitability and acquisition. Joined before company profitability, worked across whole tech stack to grow revenue and reduce cost. Dev lead on first delivered integration with acquiring company's systems, replacing $5mm/year external contract. Collaboration with expanded team in the UK, US and Canada to replace acquiring company's entire tech stack and dev approach, decreasing feature time-to-launch from months to weeks.

Maintained and deconstructed brownfield, legacy, core monolith. Untangled code from monolith into separated microservices. Transferred complete, company-critical database data with no downtime. Migrated services from Heroku to AWS without data loss, performance issues or degraded experience for users or developers.

Own greenfield, user-facing, global, financial microservice. Independently maintain and upgrade microservices to support 620,000 transactions per month, totalling $2mm USD on average. Sign and encrypt internal and external data for effective and maintainable security. Safely automate retries and refunds without duplication. Create and serve localised front- and back-end content.

Liaise with department directors to improve UX. User-first approach using latest UX learnings applied to both internal- and external-facing applications. In-depth discussions with User Rewards director, working to simplify and automate their workflow to allow for faster product additions, greater inventory analysis and more confidence in live product health. Responsive development with User Support team to build granular permissions-based tooling for self-sufficiency and faster, more accurate case resolution.

Build and maintain internal and external APIs with documentation. Auto-generate documentation from GraphQL schemas. Write guides and instructions for internal and external teams to integrate with APIs, webhooks and Kafka topics and avoid potential integration issues. Implement effective authentication and security based on the uses of each API.

Set up, maintain and use GDPR-compliant monitoring tools. Contribute to internal error filter to optimise log allowances without sacrificing info. Automatically strip PII from logs, errors and databases for GDPR-compliance. Resolve application errors through code changes and dyno configuration.

Presented talks on complex topics. Covered AI topics such including neural networks, genetic algorithms and autonomous drones. Gave presentation on gamification and how it could be implemented in our apps and websites, resulting in an increased push to implement gamification features among executives. Currently investigating and planning talk on quantum computing.

Plymouth Marine Laboratory
Web Developer (Placement) | Jul 2017 - Jun 2018

Implemented extensible, display-agnostic GIS data portal. Created generic map layer parser, enabling display of scientific data in WMS, WMTS, WCS and SOS formats. Added support for Leaflet and OpenLayers packages with ability to easily add further libraries. Used D3.js for synchronised control of multiple datasets through time.

Configured newly-released ES6 JavaScript project with OOP principles and properly-scoped code blocks. Used Babel to transpile and minify. Polyfilled for IE11 support. Designed flexible UI for fullscreen, embedded and side-by-side use cases.

Home page >