Dan Palmer — Software Engineer

Experience

Thread – Software Engineer (Level 4), September 2020 — Present

As a senior member of the engineering team at Thread I am responsible for the technical architecture of our services and improving how we work as engineers. I'm trusted across the business to deliver independently. In addition, I have been...

  • Tech lead for new business line, whitelabelling of Thread app and service for an international clothing brand. Started in March 2020. Responsible for overall architecture and technical outcome. Implemented partner integration and backend, involved in iOS implementation.
  • Tech lead for cloud migration, moving Thread services from "bare-metal" machines to Google Cloud Platform.

Coefficient – Contract Software Engineer, May 2020 – September 2020 (Part Time)

Supported data scientists and client development teams with code review and turning prototypes into production-ready code to support core business operations. Rapidly built out website and internal tools for training course booking, with a custom CMS, checkout and payments.

Thread – Software Engineer (Level 3), October 2017 — September 2020

Delivered a number of high impact engineering projects, including:

  • Modernising payment processing to support EU Strong Customer Authentication legislation.
  • Architecting and implementing the first API, using GraphQL, for a new iOS app. Now used across all frontends.
  • Backend engineer on Thread's first iOS app.
  • Defined current practices for observability in the engineering team.
Also a core part of the hiring team for engineering roles, and continued to be deeply involved in product iterations and the direction of the engineering team. Involved in new-hire training across the company.

Thread – Software Engineer (Level 2), June 2014 — October 2017

Delivered many customer product iterations in a fast-paced product team, typically focused on improving specific business metrics such as customer acquisition cost or lifetime value. Supported teams across the business, such as operations, styling, and support. Notable projects include reducing orders affected by out of stock products by ~90%, and improving scalability of styling effort, allowing Thread to scale at low cost.

MWR InfoSecurity – Security Research and Development, Summer 2013

Built a new security product from idea to fully featured prototype in order to explore a new potential business opportunity for the company. This was successful and development continued, being spun out into a new company – Countercept, growing to around 100 people before being acquired along with MWR by F-Secure in 2018.

Found critical vulnerability in a well-known communication app, as part of a penetration testing project. Reviewed and approved the client's fix.

Assisted in incident response for an attack by a suspected "Advanced Persistent Threat" actor, analysing a piece of malware to reverse engineer the cryptography being used by it.

GoSquared – Software Developer, Summer 2012

Re-built backend services for real-time visitor stats in web analytics and introduced new unit-testing framework to the team. Services built with Node.js and Redis. Completed technical evaluation of Cassandra for analytics storage.

Realmac Software – Software Developer (Intern), Summer 2011

Contributed to in-house frameworks that were shared between several applications, and helped put the finishing touches on Analog prior to release. Focused mainly on client-side integrations with webservice APIs such as Facebook, Twitter, and Amazon S3, working in Objective-C for macOS.

Qualifications

MEng Computer Science with Mobile and Secure Systems
University of Southampton (2010-2014)

  • Programming Principles: 92%
  • Secure Systems: 82%
  • Winner of 3rd Year Netcraft Prize

Talks

Skills

Technical

  • Currently using Python, Django, Kubernetes, Swift, Javascript, React and Git
  • Experience with building and maintaining Continuous Integration and Delivery processes
  • Experience using Postgres and Redis in production
  • Previously worked on Objective-C, C# .NET MVC, Elm, and Node.js codebases on professional projects
  • Some experience with Haskell and Ruby for personal projects
  • Used Java, C and Io in university projects
  • Knowledge of, and interest in, computer security issues
  • Found account takeover vulnerability in GitHub and information disclosure vulnerability in Django (CVE-2020-13254)
  • Basic knowledge, and interest in penetration testing and malware analysis
  • Experience with good software design practices

Non-Technical

  • Strong emphasis on empathy, candour and clarity in communication
  • Extensive experience with code review
  • Experience in hiring for software engineering roles
  • Experience with project management tools, bug tracking and testing feedback
  • Great written and spoken communication
  • Experience working in an environment with constant re-prioritisation of work
  • Keen and able to learn new problem domains quickly

Contact

You can contact me at cv@danpalmer.me