Jamie Tanna
Hi, I'm Jamie 👋! I'm a passionate tech lead with experience in back-end software development and infrastructure management, interested in solving problems, sharing knowledge and enabling great customer outcomes. I strongly believe in building reusable software components with a high quality bar, and improving team ways of working so we can deliver better, and more effectively over time.
If you fancy learning a bit more about me, you may be interested in my README, and my /now page.
Experience
Senior Software Engineer in a team of 10, working on software that connects consumers, riders, restaurants and agents, making sure everyone has a great experience with Deliveroo
- Leading work to build a new Go API, with a heavy focus on design-first OpenAPI
- Working on a mix of Go, Ruby on Rails, Typescript (Full Stack) codebases
- Working on internal tools for better automation and code generation for Go projects, as well as tooling around OpenAPI
Tech lead of a team of 2 formed in October 2021, leading the team technically as part of our journey to build capabilities for improving cross-government API discovery, as well as producing better guidance and standards for API delivery, while being inside a policy-driven organisation.
- Building a Federated API Discovery model to enable easier, programmatic sharing of API metadata between teams within agencies and between different agencies
- Leading work to automate manual API assessments and API guidance, with automated tooling including a novel novel Open Source tooling
- Building up a community around improving Public Sector APIs, involving sharing recommended reading, discussing best practices, supporting workshops and talks, and working with Public and Private Sector SMEs
- Writing and improving API usage guidance for use across the Public Sector
Tech lead of a team of 10 formed in September 2020, leading the team technically as part of our journey to move the on-premises platform for acquiring new credit card customers to the Cloud, using a mix of AWS Lambda and Spring Boot.
- Improved supportability of production services responsible for Capital One customer acquisition by improving information provided in the service's logging and monitoring, prioritising technical debt, which has led to improving experience of third party API consumers and reducing open incidents
- Leading work to invest in cross-team support rota and performing proactive knowledge-sharing sessions, called learning reviews, and promoting a blameless culture when we think about incidents
- Rolling out patterns for API versioning in custom HTTP layer for AWS Lambda, and improving the maintainability of our Acceptance Tests
One of the more senior engineers working on Open Banking compliance.
Led and worked on, as well as coached junior engineers on:
- A number of epics to meet Open Banking API compliance, writing new functionality for APIs to support new OAuth2 authentication types and supporting multiple types of certificates for Mutual TLS
- Key driver in cross-team standardisation of build/test/deploy pipelines for Java services across multiple teams, building upon Enterprise-driven technology requirements
- Worked on proving a high-priority Cyber requirement for Java services to implement a draft RFC, HTTP Signatures to ensure message integrity on integration between services and the API gateway
Lead Quality Engineer on Consumer Identity, owning test strategy as well as stepping into ownership of Open Banking compliance.
- Introduced patterns for Acceptance Tests to improve maintainability, as well as moving common functionality into an innersourced library which is being used across many teams
- One of the leads on leading portions of implementation and End-to-End testing of Capital One's Open Banking (PSD2) platform, including strategy, ensuring conformance to the Open Banking, Financial API (FAPI) Read/Write, and a number of OAuth2 and OpenID Connect specifications
- Experience defining test strategies for complex systems of services, defining quality gates and conformance
- Coached junior Quality Engineers on better automation testing, problem decomposition and shifting of testing left
Joined Capital One as a Graduate, working on building the Consumer Identity service as part of Capital One's move of its customer web servicing platform to the cloud
- Working with Commercial Off The Shelf identity solution, and configuring and testing the fulfilment of business requirements
- Championed the use of Chef as our configuration management tool, investing in personal learning about how to use ChefSpec for unit testing, and becoming the Subject Matter Expert within Capital One, and running lunchtime workshops
Independently decided to take a placement year in order to gain real world experience ahead of graduating, working as part of the Developer Relations Division on the UltraMobile Software Enabling (UMSE) team to help enable Windows and Android applications for Intel Architecture on smartphones, tablets and 2-in-1s.
- One of the leads for a large UK tablet project, working on remediating 3rd Party App issues, and becoming the expert for all internal technical questions
- Developed a system built on Docker that allowed isolation of different build environments, which was then adopted by the company behind the tablet project as the basis for their build infrastructure
- Assisted the Network Manager with essential maintenance over the summer holidays, and secured an additional week in December
Accolades
- 2022 OpenUK Honours List for Open Source Software
Education
Skills
Regularly Practice
- Java
- Docker
- Spring Boot
- Ruby
- Git
- Linux
- Shell scripting
- CI/CD / DevOps Automation
- Technical writing
- Jenkins
- Jenkins Job DSL
- Software testing
- OAuth2
- Coaching
- Production / incident support
- Building reusable software
- Code review
Some Experience
- Working with Technical Specifications
- Chef
- Persistent data using databases/LDAP
- Gatling
- AWS
- AWS CloudFront
- Terraform
- Ansible
- Kubernetes
- Netlify
Interests + projects
- Where I have the time, I actively pursue bettering my skills in and out of work with side projects, and reading about how other engineers approach similar problems with different technologies, to give me a more balanced and well-rounded viewpoint
- Building side projects to solve my needs
- Attending tech meetups, conferences
- Being an active part of the local tech community
- I really enjoy sharing knowledge, and improving my communication skills, and as well as speaking at national conferences and meetups about various topics, I have a blog, www.jvt.me, which I use to blog as a form of documentation for myself, but due to the breadth of topics, my site receives roughly 30000 views a month
- Knowledge sharing - blogging, public speaking
- I am part of the IndieWeb movement, which means I pursue owning my data, and means I have a number of side projects on the go at any time around this
- The IndieWeb movement
- Free and Open Source
- Automation
- Open Standards
- Hackathons / competitive programming
- Building inclusive spaces
- Remote/flexible working