About Me

I have been coding professionally since 2005, and as a hobby since long before that.

I prefer system architecture roles and backend software roles but am comfortable anywhere in the stack and have worked from frontend to system administration.

For the last 7-8 years I have been working for remote teams, in various countries with many different timezone differences and so I am comfortable with that. I also have worked as a contractor for a lot of that time, meaning I am used to joining new teams and getting up to speed quickly.

Contact

mail@carlcrowder.com
Skype:
carl.crowder

Education

  • Sept 2002 - June 2005

    Masters of Computer Science

    Cambridge University

Skills/Knowledge Summary

Backend: been using Python and especially Django for about 10 years now so this is definitely my strongest stack for backend work. Also done some ruby and know a little Go.

Frontend: Angular for frameworks, also comfortable writing standard JavaScript and jQuery.

DevOps and Systems: Provisioning using Ansible and previously puppet on various cloud-based infrastructures and also bare-metal servers. Also experience using AWS either manually or via Terraform.

I also have experience as a team lead for smaller teams and of introducing new practises to existing teams - especially DevOps.

Professional Experience

October 2023 - Current
Remote, various (Berlin, Bangkok, Sofia)
Chief Architect, Testpad

I was hired to upgrade a legacy system in several ways:

  • Update the software stack from using Python 2.7 and Django 1.5 to latest Python and Django
  • Convert the infrastructure from manually maintained EC2 instances running both code and MongoDB, and replace with AWS services (ECS and DocumentDB, amongst others) managed by Terraform
  • Implement CI/CD pipeline, replacing previous manual code deploys with GitHub actions, ECR as a container registry, and automatic rollout to an ECS cluster for zero-downtime deployments
  • Implement all audit trails, logging and security necessary to achieve SOC2 compliance and certification.
2015 - 2023
Berlin, Germany
Freelancer/Contractor - Python Backend and/or DevOps roles

Contracts of varying length and scope. Most were in remote teams across multiple timezones from California to Australia. Examples:

  • Breaking up of Odoo-based ERP into smaller services for AirUp https://www.air-up.com/
  • DevOps/SRE work for Pay.ON https://www.payon.com/
  • Python+Django monolith breakup and scaling strategy for https://www.sennder.com/
  • DevOps team member and internal web tools engineer at https://verimi.de
  • Lead backend Python developer for customer-facing portal of https://upveset.co
  • Blockchain TGE engineer at https://capdax.com
  • Backend Python developer for https://www.thermondo.de
  • Django site and scraper work for https://spendnetwork.com/
  • Django rewrite for http://www.lfm.org.uk/
  • OpenEDX customisation for http://opencraft.com/
  • Ruby/JS fullstack for http://stickermule.com
2013 to 2015
Berlin, Germany
& Amsterdam, The Netherlands
Akvo Foundation - Lead DevOps Engineer
  • Migrated entire software stack from a single server running Ubuntu 8.04 to several cloud-based Vms as well as our own server running Xen.
  • Introduced metric and reporting systems such as Graphite, Grafana and Sentry.
  • Responsible for creating repeatable, redundant architecture, provisioned using puppet.
2011 to 2013
Munich, Germany
LaterPay GmbH. - Senior Python Backend Engineer
  • Micro-payments and general payments solution for content providing websites.
  • Built the entire site from scratch using Python throughout. The web frontends are based on Django, including a custom 'flows' framework (available at https://github.com/carlio/django-flows).
  • DevOps: Created a CI and CD process using Jenkins to test using nose and Selenium, as well as deployment scripts for updating serices.
2010 to 2011
Vancouver, Canada
& Cambridge, England
Freelancer / Contractor
  • Set up a freelance web design business as Archa Design (now defunct) – performing all aspects from design through to implementation with HTML/CSS/JavaScript.
  • Subcontracted as a PHP developer for interactivetools.com, developing websites for clients using their custom CMS.
  • Contract with taptu.mobi developing iPhone/iPad applications in Objective-C.
2007 to 2009
Cambridge, England
Taptu.mobi - Java Backend Engineer
  • Head engineer for the front-end website, which had to deal with capabilities of various mobile devices and smartphones. Built using Java and Tapestry.
  • Built a map-reduce(-ish) based statistics system to analyse traffic and created reports to explain trends. This included extremely efficient storage for data and distributed workers to execute reports.
  • Implemented build processes such as Jenkins Sonar code analysis, and introduced Maven for build and release.
2005 to 2007
Cambridge, England
Jagex Ltd. - Java Engineer, Internal tools
  • Coordinated Design, Marketing and Operations departments while planning and running the engineering effort to rewrite the billing system.
  • Designed and implemented a new player reporting system, which quadrupled process efficiency and handled millions of reports through smarter data storage and retrieval and a faster, more intuitive UI.
  • Built the RuneScape forums, the third largest forum on the internet (by post volume per day) at the time.

Contact

Skype:
carl.crowder

Skills/Knowledge Summary

Backend: been using Python and especially Django for about 10 years now so this is definitely my strongest stack for backend work. Also done some ruby and know a little Go.

Frontend: Angular for frameworks, also comfortable writing standard JavaScript and jQuery.

DevOps and Systems: Provisioning using Ansible and previously puppet on various cloud-based infrastructures and also bare-metal servers. Also experience using AWS either manually or via Terraform.

I also have experience as a team lead for smaller teams and of introducing new practises to existing teams - especially DevOps.

Personal Coding Projects

Landscape.io

Landscape was a service to run static analysis tools on python code on a continuous basis. It as a side-project I ran for about 5 years - users could sign up and have their repositories on GitHub be checked every time there is a commit and have a list of potential errors and code smells. It resulted in many open-source contributions or entire projects - such as prospector.

Personal sites

I have created my own site from scratch to house my professional and personal online presence at carlcrowder.com. It includes my blog and resume, as well as the whimsical set of pictures I made while travelling of a small bear named Bearaptu.

Others on the way

  • weevils.io - extracting the "engine" part of landscape into a white-label code measurement service. This is still a work in progress

Community