diff --git a/ic/cv.tex b/ic/cv.tex index 6867686..6006465 100755 --- a/ic/cv.tex +++ b/ic/cv.tex @@ -33,11 +33,11 @@ \section{Specialities} \tabitem golang & \tabitem Node.js/ Javascript & \tabitem Python \\ \tabitem Kubernetes & \tabitem Helm, Kustomize & \tabitem Reliability Engineering \\ \tabitem Solutions Architecture & \tabitem Systems Administration & \tabitem eCommerce and MarTech \\ - \tabitem Automation & \tabitem AWS, GCP, Azure & \tabitem Terraform \\ + \tabitem Kafka & \tabitem AWS, GCP, Azure & \tabitem Terraform \\ \end{tabular} \section{About me} -A Software Engineering specialist working within Reliability Engineering and DevOps, I have spent the majority of my career working across teams, geographically or by responsibility, solving scaling and performance in large scale production systems; largely split between Publishing and Finance, though with no small amount of ISP and Datacenter work. \\ +A Software Engineering specialist working within Reliability Engineering and DevOps, I have spent the majority of my career working across teams, geographically or by responsibility, solving scaling and performance in large scale production systems; largely split between Publishing and Finance, though with no small amount of ISP and Datacentre work. \\ \\ I've a proven track record in the development of both internal tooling and external SDKs, with an emphasis on Developer Experience (DX) principles; specifically around open communication, facades over strict paradigms (for SDK development), and clear monitoring data emission. \\ @@ -47,13 +47,14 @@ \section{About me} \item Linux engineering and administration \item Reliability Engineering \item Distributed Systems using Kubernetes and Helm +\item Data Warehousing, Analytics Platform Engineering \item Architecture and Systems Design \item Technical Team Coaching and Mentorship \item Building and maintaining stakeholder confidence \item Building and nurturing technical teams using \href{https://www.mindtools.com/pages/article/servant-leadership.htm}{Servant-Leadership principals} \item Postgres administration and tuning, along with the underlying disks and OS \item Provisioning and orchestration with Terraform, Ansible, Packer, \texttt{userdata} -\item Elasticsearch; lucene query design and cluster management specifically +\item Kafka cluster architecture, management, and automation \item Multi-cloud platform design using AWS, Azure, and GCP \end{itemize} diff --git a/includes/employment.tex b/includes/employment.tex index 6874df5..33f2c6f 100644 --- a/includes/employment.tex +++ b/includes/employment.tex @@ -52,7 +52,7 @@ \section{Employment, continued} {} {} {} - {\textit{Analytics Platform}: Genesis of a Data and Analytics Engineering Team, building out a Data Platform. Breaking silos between Data Engineers and Analysts to build T-shaped engineers, increasing a feeling of personal ownership among those engineers. Technical and architectural oversight of new features by facilitating workshops and whiteboard sessions.} + {\textit{Analytics Platform}: Genesis of a Data and Analytics Engineering Team, building out a Data Platform. Breaking silos between Data Engineers and Analysts to build T-shaped engineers, increasing a feeling of personal ownership among those engineers. Technical and architectural oversight of new features by facilitating workshops and whiteboard sessions, including Kafka ingestors and BigQuery design.} \entry {} @@ -70,7 +70,7 @@ \section{Employment, continued} {July 2021 - September 2021} {Databank, a Korean Edtech Startup} {Engineering Manager} - {Line management and architectural oversight of a team of developers in Seoul, until my work permit ran out. Migration away from a frontend/backend developer silo model into a more cohesive engineering team mentality. Expansion of agile methodologies within the team, including the adoption of kanban, including tshirt sizing and BDD. Bridging the gap between engineering and Customer Support (CS) through the hiring of Application Support engineers. Delivered a monetisation strategy, \textit{and} a new product all far within schedule and budget through increased engagement and ownership. Developing features in Next.js on Vercel, and Python/ Django} + {Line management and architectural oversight of a team of developers in Seoul, until my work permit ran out. Migration away from a frontend/backend developer silo model into a more cohesive engineering team mentality. Expansion of agile methodologies within the team, including the adoption of kanban, tshirt sizing and BDD. Bridging the gap between engineering and Customer Support (CS) by hiring Application Support engineers. Delivered a monetisation strategy, \textit{and} a new product all under schedule and budget through increased engagement and ownership. Developing features in Next.js on Vercel, and Python/ Django, while architecting and re-platforming the offering onto typescript, Kafka, and into a containerised infrastructure.} \entry {December 2019 - August 2020} @@ -91,7 +91,7 @@ \section{Employment, continued} {February 2017 - October 2018} {Beamly Ltd., a Marketing Startup} {Principal Engineer, Platform Lead} - {Design, ownership, and management of the award-winning Beamly Fragrance Finder platform, an AI driven chatbot which mapped user-profiles, personality questions, and decades worth of customer knowledge to purchasing recommendations; this team was massively behind-deadline and close to being over-budget when I was brought on to manage it. Through aggressive hiring, stakeholder management, and a general re-architecture of the platform, I brought it in on-time, under-budget, and was able to work alongside the sales team to restore trust to the product. Grew the Platform Engineering team to 15 people, provided technical leadership through coaching, and running 1-to-1s, performance reviews, and promotions while supporting NodeJS, Scala, and Golang applications on a multi-cloud platform of AWS, GCP, and Azure} + {Design, ownership, and management of the award-winning Beamly Fragrance Finder platform, an AI driven chatbot which mapped user-profiles, personality questions, and decades worth of customer knowledge to purchasing recommendations; this team was massively behind-deadline and close to being over-budget when I was brought on to manage it. Through aggressive hiring, stakeholder management, and a general re-architecture of the platform, I brought it in on-time, under-budget, and was able to work alongside the sales team to restore trust to the product. Grew the Platform Engineering team to 15 people, provided technical leadership through coaching, and running 1-to-1s, performance reviews, and promotions while supporting NodeJS, Scala, and Golang applications on a multi-cloud platform of AWS, GCP, and Azure. Automation, with Terraform, of Kafka topic and consumer management.} \entry {April 2016 - November 2016} diff --git a/includes/portfolio.tex b/includes/portfolio.tex index 68e4924..16971f1 100644 --- a/includes/portfolio.tex +++ b/includes/portfolio.tex @@ -10,11 +10,17 @@ \section{Projects} \section{Portfolio} \begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}ll} + \entry + {2023-} + {Mint - Message Interface Format} + {https://github.com/mint} + {\texttt{mint} is a binary message format (similar to protobuf, thrift, etc.) designed to provide fast serialisation, a reasonably rich set of data types, and an easily extensible system of type validations. It exists to shift-left validations and transformations away from Data Warehouses and back to message producers, such as distributed systems producing \texttt{mint} messages into systems such as Kafka} + \entry {2023} {Ask Ada} {https://github.com/gender-equality-community} - {Ask Ada is a system which bridges a whatsapp chat bot with a slack based backend, passing messages over Redis Streams, and deployed to Kubernetes with a custom operator. It exists to provide anonymous answers and advice on DE\&I questions without either party knowing who the other is} + {Ask Ada is a system which bridges a WhatsApp chat bot with a slack based backend, passing messages over Redis Streams, and deployed to Kubernetes with a custom operator. It exists to provide anonymous answers and advice on DE\&I questions without either party knowing who the other is} \entry {2021}