Compare commits
2 Commits
83033b0cb6
...
0c154cf32a
Author | SHA1 | Date | |
---|---|---|---|
|
0c154cf32a | ||
|
91f58fd1da |
123
.aspell.en.pws
123
.aspell.en.pws
@ -1,69 +1,72 @@
|
||||
personal_ws-1.1 en 68
|
||||
personal_ws-1.1 en 71
|
||||
AAAAA
|
||||
RaspberryPi
|
||||
Grantham
|
||||
DevOps
|
||||
TheMajority
|
||||
canham
|
||||
statefull
|
||||
Jinja
|
||||
ElastiCache
|
||||
Ansible
|
||||
AnthillPro
|
||||
AppStream
|
||||
Atlassian
|
||||
Lamda
|
||||
backends
|
||||
unmanaged
|
||||
Subreddit
|
||||
subreddit
|
||||
Calify
|
||||
ChatOps
|
||||
Cloudformation
|
||||
Cloudreach
|
||||
Cloudreach's
|
||||
Cloudwatch
|
||||
CodeDeploy
|
||||
Cognito
|
||||
Config
|
||||
orchestrator
|
||||
DevOps
|
||||
ElastiCache
|
||||
FastTrack
|
||||
Github
|
||||
Gitlab
|
||||
Rekognition
|
||||
Calify
|
||||
Cloudwatch
|
||||
JuanCanham
|
||||
pythonic
|
||||
Cloudreach
|
||||
Serverless
|
||||
serverless
|
||||
countryCode
|
||||
SysOps
|
||||
Powershell
|
||||
Monit
|
||||
Kaseya's
|
||||
endDate
|
||||
studyType
|
||||
Cloudreach's
|
||||
FastTrack
|
||||
piRobotWars
|
||||
Cloudformation
|
||||
frontend
|
||||
knowledgebase
|
||||
Supporttree
|
||||
whitepapers
|
||||
prototyped
|
||||
datacentre
|
||||
skunkworks
|
||||
Milkround
|
||||
virtualised
|
||||
Grantham
|
||||
Heymarket
|
||||
Mopidy
|
||||
CodeDeploy
|
||||
Jinja
|
||||
JuanCanham
|
||||
Kaseya
|
||||
subskills
|
||||
hackathons
|
||||
ChatOps
|
||||
AppStream
|
||||
SystemD
|
||||
Musicbox
|
||||
MusicBox
|
||||
Norges
|
||||
AnthillPro
|
||||
hackathon
|
||||
LinkedIn
|
||||
NBIM's
|
||||
natively
|
||||
startDate
|
||||
Kaseya's
|
||||
Kubernetes
|
||||
Lamda
|
||||
LinkedIn
|
||||
Milkround
|
||||
Monit
|
||||
Mopidy
|
||||
MusicBox
|
||||
Musicbox
|
||||
NBIM's
|
||||
Norges
|
||||
OAuth
|
||||
Powershell
|
||||
RaspberryPi
|
||||
Rekognition
|
||||
Serverless
|
||||
Subreddit
|
||||
Supporttree
|
||||
SysOps
|
||||
SystemD
|
||||
Terraform
|
||||
Ansible
|
||||
TheMajority
|
||||
backends
|
||||
canham
|
||||
countryCode
|
||||
datacentre
|
||||
endDate
|
||||
frontend
|
||||
hackathon
|
||||
hackathons
|
||||
knowledgebase
|
||||
natively
|
||||
orchestrator
|
||||
piRobotWars
|
||||
prototyped
|
||||
pythonic
|
||||
serverless
|
||||
skunkworks
|
||||
startDate
|
||||
statefull
|
||||
studyType
|
||||
subreddit
|
||||
subskills
|
||||
unmanaged
|
||||
virtualised
|
||||
webapp
|
||||
whitepapers
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
||||
node_modules/
|
||||
dist/
|
||||
*~
|
||||
*.bak
|
||||
|
2
.linkcheckerrc
Normal file
2
.linkcheckerrc
Normal file
@ -0,0 +1,2 @@
|
||||
[filtering]
|
||||
ignorewarnings=url-whitespace
|
3
Makefile
3
Makefile
@ -36,10 +36,11 @@ lint:
|
||||
cfn-lint deploy/cloudformation/*
|
||||
|
||||
prepare: clean resume.yaml
|
||||
mkdir -p dist/images/
|
||||
./transform.py
|
||||
./generate_qrcode.py "https://$(SITENAME)" QR
|
||||
cp -r images dist/
|
||||
rm dist/images/*~
|
||||
rm dist/images/*~ || true
|
||||
|
||||
validate: prepare
|
||||
$(hackmyresume) validate dist/resume.json
|
||||
|
23
Resume.md
23
Resume.md
@ -4,11 +4,9 @@ Email: cv@juancanham.com
|
||||
|
||||
Web: https://cv.juancanham.com
|
||||
|
||||
A Pragmatic Cloud "DevOps" Engineer, with experience at a variety of companies, across a range of technologies
|
||||
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, primarily working as both:
|
||||
* an architect, aligning the technical solutions to the customers requirements
|
||||
* a technical lead, both delivering code and guiding/mentoring/supporting teams as required.
|
||||
Capable of wearing whatever hat is needed for a given job.
|
||||
|
||||
|
||||
## SKILLS
|
||||
@ -21,11 +19,18 @@ Capable of wearing whatever hat is needed for a given job, primarily working as
|
||||
|
||||
## EMPLOYMENT
|
||||
|
||||
### *Open Source Developer*, [Self](https://juancanham.com) (2019-07 — Present)
|
||||
### *Senior Cloud Engineer*, [DPR consulting](https://www.dpr.co.uk/) (2020-04 — 2021-10)
|
||||
|
||||
Full stack developer (including support & infrastructure engineering) for multiple customer facing serverless applications.
|
||||
- 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
|
||||
|
||||
### *Open Source Developer*, [Self](https://juancanham.com) (2019-07 — 2020-04)
|
||||
|
||||
Spending a few months developing tools to make engineering in the clouds easier. And other assorted tools
|
||||
- Quickly Built a tool to view twitter exports
|
||||
- Begun work on a module
|
||||
- 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
|
||||
|
||||
@ -45,7 +50,7 @@ Worked with the leadership team to improve the System Developers role.
|
||||
|
||||
### *Internal hackathons/skunkworks Developer*, [Cloudreach](https://www.cloudreach.com) (2012-02 — 2019-07)
|
||||
|
||||
While at Cloudreach, worked on various spikes and hackathons
|
||||
|
||||
- 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
|
||||
@ -58,7 +63,7 @@ Worked on technical projects on AWS, Google Apps & Salesforce both individually
|
||||
- Worked across 3 cloud platforms (Google, AWS, Salesforce)
|
||||
- Delivered difficult Google 2 Google migrations on tight deadlines
|
||||
|
||||
### *Support Engineer*, [Supporttree](https://supporttree.co.uk) (2010-01 — 2012-02)
|
||||
### *Support Engineer*, [Supporttree](http://supporttree.co.uk) (2010-01 — 2012-02)
|
||||
|
||||
Full support for small businesses including end user systems, on-premise servers and cloud services.
|
||||
- Worked in a user facing role, for a variety of small businesses
|
||||
|
7885
package-lock.json
generated
Normal file
7885
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -5,3 +5,5 @@ pylint==2.*
|
||||
qrcode==6.*
|
||||
yamllint==1.20.*
|
||||
image==1.5.28
|
||||
yq==2.*
|
||||
niet==2.4.*
|
||||
|
@ -1,8 +1,8 @@
|
||||
{
|
||||
"basics": {
|
||||
"name": "Juan Barry Manual Canham",
|
||||
"label": "Cloud \"DevOps\" Engineer",
|
||||
"summary": "A Pragmatic Cloud \"DevOps\" Engineer, with experience at a variety of companies, across a range of technologies\ndriving both technological change as well as business focused outcomes.\nCapable of wearing whatever hat is needed for a given job, primarily working as both:\n* an architect, aligning the technical solutions to the customers requirements\n* a technical lead, both delivering code and guiding/mentoring/supporting teams as required.\n",
|
||||
"label": "Cloud Engineer",
|
||||
"summary": "A Cloud Engineer & Developer, with experience at a variety of companies, across a range of technologies\ndriving both technological change as well as business focused outcomes.\nCapable of wearing whatever hat is needed for a given job.\n",
|
||||
"website": "https://cv.juancanham.com",
|
||||
"email": "cv@juancanham.com",
|
||||
"picture": "images/QR.png",
|
||||
@ -30,15 +30,29 @@
|
||||
]
|
||||
},
|
||||
"work": [
|
||||
{
|
||||
"company": "DPR consulting",
|
||||
"website": "https://www.dpr.co.uk/",
|
||||
"position": "Senior Cloud Engineer",
|
||||
"startDate": "2020-04",
|
||||
"endDate": "2021-10",
|
||||
"summary": "Full stack developer (including support & infrastructure engineering) for multiple customer facing serverless applications.",
|
||||
"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"
|
||||
]
|
||||
},
|
||||
{
|
||||
"company": "Self",
|
||||
"website": "https://juancanham.com",
|
||||
"position": "Open Source Developer",
|
||||
"startDate": "2019-07",
|
||||
"endDate": "2020-04",
|
||||
"summary": "Spending a few months developing tools to make engineering in the clouds easier. And other assorted tools",
|
||||
"highlights": [
|
||||
"Quickly Built a tool to view twitter exports",
|
||||
"Begun work on a module",
|
||||
"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"
|
||||
]
|
||||
@ -75,7 +89,6 @@
|
||||
"position": "Internal hackathons/skunkworks Developer",
|
||||
"startDate": "2012-02",
|
||||
"endDate": "2019-07",
|
||||
"summary": "While at Cloudreach, worked on various spikes and hackathons",
|
||||
"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",
|
||||
@ -98,7 +111,7 @@
|
||||
},
|
||||
{
|
||||
"company": "Supporttree",
|
||||
"website": "https://supporttree.co.uk",
|
||||
"website": "http://supporttree.co.uk",
|
||||
"position": "Support Engineer",
|
||||
"startDate": "2010-01",
|
||||
"endDate": "2012-02",
|
||||
|
File diff suppressed because one or more lines are too long
63
resume.yaml
63
resume.yaml
@ -5,15 +5,12 @@ contact:
|
||||
website: https://cv.juancanham.com
|
||||
|
||||
info:
|
||||
label: Cloud "DevOps" Engineer
|
||||
label: Cloud Engineer
|
||||
image: images/QR.png
|
||||
brief: |
|
||||
A Pragmatic Cloud "DevOps" Engineer, with experience at a variety of companies, across a range of technologies
|
||||
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, primarily working as both:
|
||||
* an architect, aligning the technical solutions to the customers requirements
|
||||
* a technical lead, both delivering code and guiding/mentoring/supporting teams as required.
|
||||
|
||||
Capable of wearing whatever hat is needed for a given job.
|
||||
location:
|
||||
city: London
|
||||
county: Greater London
|
||||
@ -78,23 +75,44 @@ certifications:
|
||||
level: Microsoft Certified Technology Specialist
|
||||
|
||||
employment:
|
||||
summary: "9+ years cloud infrastructure experience as engineer, technical lead & architect"
|
||||
summary: "10+ years cloud infrastructure experience as developer, engineer, technical lead & architect"
|
||||
history:
|
||||
- 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
|
||||
|
||||
- employer: Self
|
||||
url: https://juancanham.com
|
||||
technologies: [Cloud, AWS, GCP, Azure, SSO, Open Source]
|
||||
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
|
||||
end: 2020-04
|
||||
highlights:
|
||||
- Quickly Built a tool to view twitter exports
|
||||
- Begun work on a module
|
||||
- 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: Offline Twitter Export Viewer
|
||||
summary: Simple tool to view twitter exports offline
|
||||
url: https://gitlab.com/RitoingPacifst/offline-twitter-export-viewer
|
||||
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
|
||||
@ -110,9 +128,7 @@ employment:
|
||||
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 at Cloudreach,
|
||||
aligning the individuals personal development plans both with Cloudreach's goals and their longer term career trajectories.
|
||||
It was particularly rewarding was getting team members of promoted to Tech-lead level.
|
||||
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]
|
||||
@ -187,8 +203,7 @@ employment:
|
||||
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, processes, such as training programs,
|
||||
interview processes and the graduate program.
|
||||
This included both technical tooling and non-technical initiatives.
|
||||
start: 2016-06
|
||||
end: 2019-07
|
||||
keywords: [Strategy, Vision, Internal, Personal Development]
|
||||
@ -238,16 +253,10 @@ employment:
|
||||
technologies: [Slack]
|
||||
|
||||
- position: Internal hackathons/skunkworks Developer
|
||||
summary: While at Cloudreach, worked on various spikes and hackathons
|
||||
employer: Cloudreach
|
||||
url: https://www.cloudreach.com
|
||||
description: |
|
||||
Used various competitions and opportunities to build prototypes to demonstrate feasibility of tools,
|
||||
as they were built over short periods of time, they were not production ready,
|
||||
however they worked and often fed into the approaches used in projects.
|
||||
start: 2012-02
|
||||
end: 2019-07
|
||||
keywords: [hackathon]
|
||||
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
|
||||
@ -331,15 +340,11 @@ employment:
|
||||
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),
|
||||
Server (physical and virtualised) & Services (in-house and cloud based) for small businesses.
|
||||
In addition to end-user support, also implemented several projects.
|
||||
While the main toolkit for automation was Kaseya's custom DSL, pushed for automation whenever possible,
|
||||
usually making use of either custom code or portable GNU tools.
|
||||
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: https://supporttree.co.uk
|
||||
keywords: [User Facing]
|
||||
url: http://supporttree.co.uk
|
||||
technologies: [Windows, OS X, Linux, Networking]
|
||||
highlights:
|
||||
- Worked in a user facing role, for a variety of small businesses
|
||||
|
@ -15,9 +15,9 @@ generate:
|
||||
- darkly
|
||||
- superhero
|
||||
- cerulean
|
||||
kcv:
|
||||
- flat
|
||||
- modern
|
||||
kcv: []
|
||||
# - flat
|
||||
# - modern
|
||||
full:
|
||||
plain:
|
||||
- node_modules/fresh-theme-elegant
|
||||
@ -27,7 +27,7 @@ links:
|
||||
- name: PDF
|
||||
url: resume.pdf
|
||||
- name: markdown
|
||||
url: https://git.juancanham.com/JuanCanham/juan-canham-resume/Resume.md
|
||||
url: https://git.riotingpacifist.net/JuanCanham/juan-canham-resume/src/branch/master/Resume.md
|
||||
- name: yaml
|
||||
url: resume.yaml
|
||||
|
||||
@ -40,8 +40,8 @@ links:
|
||||
- Modern
|
||||
- superhero
|
||||
- cerulean
|
||||
- kcv-flat
|
||||
- kcv-modern
|
||||
# - kcv-flat
|
||||
# - kcv-modern
|
||||
- group: formats
|
||||
links:
|
||||
- name: json
|
||||
|
@ -10,7 +10,7 @@ import yaml
|
||||
|
||||
# pylint: disable=missing-function-docstring
|
||||
def main():
|
||||
with open("resume.yaml") as file:
|
||||
with open("resume.yaml", encoding="utf-8") as file:
|
||||
resume = yaml.load(file, Loader=yaml.BaseLoader)
|
||||
|
||||
transform_and_write("full", make_full, resume)
|
||||
@ -19,7 +19,7 @@ def main():
|
||||
|
||||
def write_file(name, data):
|
||||
filename = os.path.join("dist", name + ".json")
|
||||
with open(filename, "w") as file:
|
||||
with open(filename, "w", encoding="utf-8") as file:
|
||||
json.dump(data, file)
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ def make_fresh(data):
|
||||
|
||||
|
||||
def make_full(data):
|
||||
with open("settings.yaml") as file:
|
||||
with open("settings.yaml", encoding="utf-8") as file:
|
||||
data["settings"] = yaml.load(file, Loader=yaml.BaseLoader)
|
||||
|
||||
tags = data.get("tags", [])
|
||||
|
Loading…
Reference in New Issue
Block a user