juan-canham-resume/resume.yaml

508 lines
25 KiB
YAML

---
name: Juan Barry Manual Canham
contact:
email: "cv@juancanham.com"
website: https://cv.juancanham.com
info:
label: Cloud Engineer
image: images/QR.png
brief: |
A Cloud Engineer & Developer, with experience at a variety of companies, across a range of technologies
driving both technological change as well as business focused outcomes.
Capable of wearing whatever hat is needed for a given job.
location:
city: Oakland
county: Alameda
state: California
country: United States of America
region: NA
countryCode: US
social:
- label: Git
network: Git
user: jc
url: http://git.juancanham.com/
- label: LinkedIn
network: LinkedIn
user: juan-canham-aa005a51
url: https://www.linkedin.com/in/juan-canham-aa005a51/
- label: Github
network: Github
user: JuanCanham
url: https://github.com/juancanham
certifications:
- organization: AWS
certificates:
- name: Solutions Architect
level: Professional
logo: AWS-Solutions-Architect-Pro.png
- name: DevOps
level: Professional
logo: AWS-DevOps-Pro.png
- name: Solutions Architect
level: Associate
logo: AWS-Solutions-Architect-Associate.png
- name: SysOps Administrator
level: Associate
logo: AWS-Sysops-Associate.png
- name: Developer
level: Associate
logo: AWS-Developer-Associate.png
- organization: Google
certificates:
- name: Cloud Architect
level: Professional
logo: GCP-Cloud-Architect-Pro.png
- name: Data Engineer
level: Professional
logo: GCP-Data-Engineer-Pro.png
- name: Google Apps Deployment Specialist
- organization: Linux Professional Institute
certificates:
- name: LPCI-1
logo: LPCI-1.png
- organization: Salesforce
certificates:
- name: Force.com Developer
logo: Salesforce-Platform-Developer.png
- name: Administrator
logo: Salesforce-administrator.png
- organization: Microsoft
certificates:
- name: Windows 7, Configuration
level: Microsoft Certified Technology Specialist
employment:
summary: "10+ years cloud infrastructure experience as developer, engineer, technical lead & architect"
history:
- employer: Self
url: https://juancanham.com
position: Open Source Developer
summary: Spending a few months developing tools to make engineering in the clouds easier. And other assorted tools
start: 2019-07
highlights:
- Built a mobile app to showcase user sourced data, using Flutter and Dart
- Contributed to existing open source projects such as Gpodder and Gpodder.net
- Built a tool to view twitter exports
- Built a website to highlight the problems with FPTP
- Built a tool to monitor activity on toxic internet communities
projects:
- name: Mobile location based-app
summary: Mobile app built on Flutter/Dart. With the backend on GCP (Firebase & Storage)
description: |
Built a prototype app for a customer.
Mobile app built on Flutter/Dart with support for Android & iOS, but only built on Android for now.
The app combined camera & location data, with a combination of authoritative and user submitted data to inform users about
the venues which the app supported.
The backend was provided by GCP, entirely storage based for scale & cost purposes, using Firebase for authentication.
While the project is currently still a prototype, the front & backend are functional.
technologies: [Android, Flutter, Dart, GCP]
- name: Gpodder & Gpodder.net updates
summary: Contribute bug fixes & features to Gpodder & Gpodder.net
url: https://gpodder.net
technologies: [Python, GTK, Django]
- name: Offline Twitter Export Viewer
summary: Simple tool to view twitter exports offline
url: https://gitlab.com/RiotingPacifist/twitter-export-viewer
- name: Generic AWS Saml CLI (WIP)
summary: Generic SAML tool for AWS, to work with multiple providers and multiple backends using a modular pythonic design.
- name: TheMajority.uk
summary: Website generator combining markdown, Jinja & yaml. Also a website about proportional representation
url: https://gitlab.com/TheMajority/themajority.uk
- name: Subreddit Monitor
summary: Serverless Python bot, to monitor subreddit activity for cross-posts and notify users
- position: Volunteer & Volunteer Coordinator
summary: Volunteering at various organizations, including coordinating volunteers and donated resources.
start: 2022-01
- employer: DPR consulting
url: https://www.dpr.co.uk/
technologies: [AWS, Lambda, Typescript, React, Node, OAuth, Cognito, Dynamo, SQL, Cloudformation]
position: Senior Cloud Engineer
summary: Full stack developer (including support & infrastructure engineering) for multiple customer facing serverless applications.
start: 2020-04
end: 2021-10
highlights:
- Picked up Typescript and React and to deliver front-end improvements
- Improved build pipelines, to deliver CI while pushed quality left, by enforcing linting and coverage testing
- (Collectively) improved our processes significantly to much better reflect agile best practices
- Built and migrated to a multi-account structure with an access account deployed entirely as configuration
projects:
- name: Broker ID
url: https://www.brokerid.co.uk/
summary: An SSO solution for Mortgage Brokers
- name: Broker ID Data
url: https://data.brokerid.co.uk
summary: Providing information from multiple sources for FCA regulated firms, both via a webapp and in backwards compatible extracts
- name: Distribution Hub
summary: A service to enable brokers to search and track multiple lender systems mortgage application on
- position: Cloud Systems Developer Lead
summary: Worked on customer projects as a Lead/Architect and mentored a small team.
employer: Cloudreach
url: https://www.cloudreach.com
description: |
Worked on customer projects as a Tech Lead/Architect.
Managed a team of 3 or 4 engineers within Cloudreach, making sure they got the most out of their role.
start: 2014-03
end: 2019-07
keywords: [Leadership, Mentoring, Architect, Tech Lead]
highlights:
- Architect on several Enterprise engagement, at companies such as NBIM, BP, News UK, etc.
- Delivered both the architecture and implementation on multiple Cloud Access models
- Managed a team for 4 engineers, helping them get the most out of working for Cloudreach
- Helped run a city government hackathon (TFL)
projects:
- name: Cloud Migration
customer: Norges Bank Investment Management
summary: Formed part of the CCOE supporting NBIM's datacentre exit onto immutable infrastructure in AWS
description: |
NBIM had an aggressive migration strategy, based on a standardized pipeline approach in order to
re-platform 150 applications into immutably deployed services within 8 months.
As part of the CCOE, helped build and maintain the pipeline (Cloudformation, Ansible, Packer, Jinja,
Powershell) in order to achieve this.
As well as support teams migrating applications, migrate applications and ensure best practices were
applied at an account level.
keywords: [CCOE, Deployment Pipeline, Immutable]
technologies: [AWS, Packer, Cloudformation, Ansible, Jinja, Python, Windows, Linux]
- name: AWS CIP
customer: BP
summary: Architect for BP's Cloud infrastructure Platform (AWS)
description: |
Architect/Tech Lead on the AWS side of BP's Cloud infrastructure Platform (CIP), responsible for
- Guiding high-level goals
- Interfacing with other teams and gather requirements at a technical level
- Aligning high-level & mid-Level architectures
- RBAC engine in a Multi-Tenanted account
- Supporting the team and ensure code quality for services and customers
Transitioned the project from an EC2-focused offering in 1 region, with 4 supported OSes,
to a managed cloud native datacentre, offering use of 20 AWS services, across 2 regions with 6 supported OSes,
as well as aligning future visions towards a many-account model.
keywords: [Strategy, RBAC, Multi-Tenanted, Platform, Shared Services, Landing Zone, Multi-Region]
technologies: [AWS, IAM, Cloudformation, Windows, Linux, Python]
- name: Multi Cloud Lab Vending Engine
customer: Cloudreach
summary: Replace Long lived Multi-User Labs with an on-demand Multi Cloud Lab Vending Engine
description: |
Transformed shared per-cloud lab accounts, into an SSO integrated multi-cloud (AWS, Azure, GCP)
on-demand vending engine, improving security, while reducing cost and increasing accountability.
In addition for pushing for the change on the business side, designed the API for integrating with
the serverless per-cloud solutions,
implement the central orchestration workflows in Google Apps script (JavaScript),
Wrote the serverless wrapper (python) that provided the link between AWS's Landing Zone product and the
orchestrator.
keywords: [Multi-cloud, Strategy, Portal, Landing Zone, Multi-Account, Serverless, SSO, API Design]
technologies: [AWS, Azure, GCP, Account Vending Engine, JavaScript, Stateless, Python, Lambda, SAM]
- name: TFL hackathon
customer: TFL
summary: Helped Run and Judge TFL Active Travel Hackathon
description: |
Provided expertise for teams making use of AWS while building solutions using TFL, Met Office &
Ordinance Survey's APIs.
keywords: [AWS, Hackathon, APIs]
technologies: [AWS]
- name: Pearson Governance Framework and Prototype
customer: Pearson
summary: Designed and prototyped Pearson's AWS governance strategy
description: |
Produced a cloud adoption and governance strategy, to reduce the unmanaged spend across 100+ accounts.
Provided a design for account structure, access, networking, security, monitoring, cost allocation and deployment.
Led team building a serverless monitoring and triage framework (similar to cloud guardian/current AWS whitepapers),
and target account creation and hardening.
keywords: [Strategy, Multi-Tenanted, Platform, Shared Services, Landing Zone, Serverless]
technologies: [AWS, Cloudformation, Windows, Linux, Python]
- position: Role Owner (Cloud Systems Developers)
summary: Worked with the leadership team to improve the System Developers role.
employer: Cloudreach
url: https://www.cloudreach.com
description: |
Worked with the leadership team to improve the System Developers role.
This included both technical tooling and non-technical initiatives.
start: 2016-06
end: 2019-07
keywords: [Strategy, Vision, Internal, Personal Development]
highlights:
- Helped Engineers get improve their technical skills though a hands-on training workshop program
- Trained and mentored multiple sets of graduates
projects:
- name: Personal Growth workshops
summary: Introduced monthly hands-on training workshops.
description: |
By using in-house experts, to deliver 1/2 day, regional hands-on, realistic, workshops,
the program gives engineers a chance to use emerging technologies on realistic use cases, rather than under idea situations.
For example, it's easy to setup a Kubernetes demo, but most introductions, don't cover dealing with sidecars and statefull containers.
The workshops also gave experienced team engineers a change to showcase their skills and produce content for our knowledgebase.
As the workshops were run separately it was also an opportunity for the American and European offices to collaborate
on training materials, without having to deal with time-zones for the delivery.
keywords: [Personal Development, Training, Strategy, DevOps]
- name: Graduate/FastTrack Trainer/coordinator
summary: Involved in the delivery of 6 Fast Track training programs.
description: |
The Graduate/Fast Track program was a 8-10 week training course initially for recent graduates
and later for anybody keen to retrain and start working in cloud based DevOps.
Responsible for at least one, two week course on either AWS or infrastructure as code, in every program,
as the cloud computing progresses rapidly this meant refreshing course materials and delivering,
a hands-on course to groups of 6-20.
In addition to delivering the training also worked with the leadership team and managers to ensure
graduates were placed onto appropriate projects.
keywords: [Personal Development, Training]
technologies: [AWS, IaC]
- name: Interview Process update
summary: Responsible for refining and updating the interview process
description: |
Refined the interview process through two major iterations,
First standardizing the process across all our European and American offices,
being more prescriptive in terms of scoring.
The second introduced somewhat objective scoring criteria, while still giving interviewers enough scope to
keywords: [Interviews, Metrics]
- name: Unified Chatroom system & Knowledge base
summary: Helped establish a company wide unified Chatroom system & Knowledge base.
description: |
Standardizing the company on a single chat and knowledge base, made it much easier for new colleagues to get up to
speed. Most of this was focusing on making the case for unifying the tooling (in this case Slack and Atlassian),
making sure there was a path forward for all the teams involved that wasn't seen as a regression was important.
The end result was much more cross-department knowledge sharing, mostly along technical lines,
however it also helped organize events (both globally and office specific).
keywords: [ChatOps, Knowledge Sharing]
technologies: [Slack]
- position: Internal hackathons/skunkworks Developer
employer: Cloudreach
url: https://www.cloudreach.com
start: 2012-02
end: 2019-07
highlights:
- Built Automated tanks that used image recognition to move and fire at each other.
- Built various useful internal tools, that remained in use for years
- Built a variety of IaC tools, that made deployments easier
- Won a trip to Central America
- Had project open sourced externally, by somebody that found it useful
projects:
- name: piRobotWars
summary: Automated tanks that used image recognition to move and fire at each other.
technologies: [Rekognition, RaspberryPi, Soldering, Python, Lambda]
- name: Calify
summary: Room booking system, based on Google calendar and android.
technologies: [Android, Java, Google Apps]
- name: Cloudformation Supremacy Engine
summary: Tools to facilitate better deployment of Cloudformation
technologies: [Python, Terraform, Cloudformation]
- name: Serverless Sceptre
summary: Tool for event driven Cloudformation deployments
technologies: [Lamda, IaC, Cloudformation, Python]
- name: Address Book, Contact sync, Holiday booking system
summary: Google apps automation used internally for booking holidays and syncing to mobile devices
technologies: [Google Apps, JavaScript]
- name: MusicBox
summary: Various iterations of the Office jukebox systems
technologies: [RaspberryPi, Musicbox, Mopidy, JavaScript]
- position: Cloud Systems Developer
employer: Cloudreach
url: https://www.cloudreach.com
summary: Worked on technical projects on AWS, Google Apps & Salesforce both individually and as part of a team.
start: 2012-02
end: 2014-03
highlights:
- Worked across 3 cloud platforms (Google, AWS, Salesforce)
- Delivered difficult Google 2 Google migrations on tight deadlines
projects:
- name: Salesforce Roll-out for Media Group
customer: Heymarket
summary: Re-implemented their sales processes in Salesforce and configured production & sandbox accounts
description: |
Part of the team doing the initial roll out to replace legacy CRM systems, did the initial requirements gathering,
then matched the existing processes to those of Salesforce to fully automate the process for transforming
digital media leads to cash.
This involved both customizing Salesforce objects/processes and writing apex triggers and classes
(along with the tests required by the platform).
keywords: [Processes]
technologies: [Salesforce, Apex, SOQL]
- name: Cross Team Support at a Large Media company
customer: News UK
description: |
Working as the cloud lead systems engineer inside a large media corporation,
supported the infrastructure for all products being developed by partners on AWS,
as well as the build servers used to support those (and other) deployments.
Alongside supporting the running development environments,
developed and rolled out a unified platform & development kit to simplify application and
infrastructure, build, deployment, monitoring and support,
while reducing the overall support burden at the company by,
helping other teams standardize on the platform where practical.
- name: Google to Google Migrations
customer: Various (Milkround, News UK, etc)
summary: Helped migrate various customers between Google Apps accounts
description: |
Due to limitations in the Google Apps platform, the source account had to be completely deleted prior to the end of the
migration, this means the entire migration had to be completed, including fixes and validation of data within about 60 hours.
When combined with the user facing nature of mail migrations, this resulted in particularly difficult migrations,
with tight deadlines
keywords: [Migration, User Facing]
technologies: [Google Apps, Python, AWS]
- name: Google Migrations
customer: Various (Jamie Oliver group, Graze, etc)
summary: Helped migrate various customers between Google Apps accounts
keywords: [Migration, User Facing]
technologies: [Google Apps, Python, AWS]
- name: Teletext Holidays Optimization
customer: Teletext Holidays
summary: Provided guidance and recommendations for frontend optimization of the Teletext Holidays website
keywords: [Frontend, Web, Optimization]
technologies: [JavaScript, Web]
- employer: Supporttree
position: Support Engineer
summary: Full support for small businesses including end user systems, on-premise servers and cloud services.
description: |
Providing 1st to 3rd line support of Desktops (Windows and OS X) for small businesses.
In addition to end-user support, also implemented several projects & pushed for automation whenever possible.
start: 2010-01
end: 2012-02
url: http://supporttree.co.uk
technologies: [Windows, OS X, Linux, Networking]
highlights:
- Worked in a user facing role, for a variety of small businesses
- Made use of automation and unix, in an otherwise manual windows environment
education:
level: Bachelor [incomplete]
history:
- institution: UCL
title: Bachelor Natural Sciences (Physics & Chemistry) [incomplete]
start: 2006-09
end: 2009-07
- institution: King's School Grantham
title: A-Levels
start: 2004-09
end: 2006-07
grade: AAAAA
curriculum:
- Math
- Further Math
- Physics
- Chemistry
- Spanish
skills:
levels: [Novice, Basic, Moderate, Knowledgeable, Skilled]
sets:
- name: Programming
level: Skilled
skills:
- name: Python
level: Skilled
summary: Primary language used for most projects
- name: Ruby
level: Skilled
summary: Primary language used for some projects, also often used as part of Chef or other tools used within projects
- name: Bash
level: Skilled
summary: Used extensively for system automation
- name: JavaScript
level: Knowledgeable
summary: Experience with both frontend development and Node to deliver automation
- name: Dart
level: Basic
summary: Language used for Flutter cross platform mobile platform
- name: Apex/Java
level: Basic
summary: Primary language used for Salesforce development
- name: Other Languages
level: Novice
summary: Powershell, Vbs, batch, PHP, Perl, C, C#
- name: AWS
level: Skilled
skills:
- name: Cloudformation
level: Skilled
summary: Both natively and via Troposphere, Jinja & ruby-DSL
- name: IAM
level: Skilled
summary: Extensive knowledge in building secured multi-tenanted accounts
- name: Lambda
level: Knowledgeable
summary: Used extensively with both Python & JavaScript as part of stand-alone components & complex frameworks
- name: DynamoDB
level: Knowledgeable
summary: Used in-depth to store state for lambda, whenever S3 was not viable
- name: Core AWS services
level: Skilled
summary: Have used EC2, S3, RDS, SNS, SQS, Cloudwatch, Config, ElastiCache, etc, extensively
- name: Additional AWS services
level: Knowledgeable
summary: Have used other services such as Direct Connect, CodeDeploy, AppStream, etc
- name: DevOps tools and methodologies
level: Skilled
skills:
- name: IaC
level: Skilled
summary: Always used Infrastructure as Code (IaC), primarily native tools, but also Terraform when needed
- name: Immutability
level: Skilled
summary: Designed and implemented immutable systems
- name: Configuration Management
level: Skilled
summary: Extensive use of configuration management tools such as Chef and Ansible when needed
- name: TDD - Infrastructure
level: skilled
summary: Used test driven development (TDD) on most greenfield projects and also gradually retrofitted to legacy infrastructure
- name: TDD - Application
level: Moderate
- name: Build systems
level: skilled
summary: Always used Build systems (Jenkins, AnthillPro, Code*, Gitlab, etc)
- name: Containers
level: Knowledge
summary: Familiar with immutable image pipelines and methodologies
- name: Init systems
level: Knowledgeable
summary: Used Upstart/SystemD/SysV/Monit as required, in particular use of signals/sockets when possible
- name: Agile
level: Moderate
summary: Used both within Small companies and adapted Larger Enterprise
- name: Google
level: Knowledgeable
skills:
- name: GCP
level: Moderate
summary: Developed high level account strategies for GCP
- name: Google deployment manager
level: Moderate
summary: Developed transformation tool using Google Deployment Manager
- name: Google App Engine
level: Moderate
summary: Some use as part of projects, primarily in Python
- name: Google Apps
level: Skilled
summary: Extensive use as part of Google Apps projects
- name: Salesforce
level: Moderate
skills:
- name: Apex
level: Moderate
summary: Experience writing both small classes and triggers
- name: Configuration
level: Basic
summary: Experience configuring Salesforce estates as per customer requirements
languages:
- language: English
fluency: Native
- language: Spanish
fluency: Native
interests:
- name: Volunteering
- name: Open Source & Linux
- name: Traveling
- name: Punk Rock, Politics & the Pub
meta:
format: FRESH@1.0.0
version: 0.0.1