docs: add comprehensive LaTeX resume with 6+ years experience

This commit is contained in:
Story Crater Bot
2026-09-01 10:43:39 -07:00
parent db574ca04f
commit 256ceec855
+185
View File
@@ -0,0 +1,185 @@
\documentclass[letterpaper,11pt]{article}
\usepackage{latexsym}
\usepackage[empty]{fullpage}
\usepackage{titlesec}
\usepackage{marvosym}
\usepackage[usenames,dvipsnames]{color}
\usepackage{verbatim}
\usepackage{enumitem}
\usepackage[pdftex]{hyperref}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % clear all header and footer fields
\fancyfoot{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
% Adjust margins
\addtolength{\oddsidemargin}{-0.375in}
\addtolength{\evensidemargin}{-0.375in}
\addtolength{\textwidth}{1in}
\addtolength{\topmargin}{-.5in}
\addtolength{\textheight}{1.0in}
\urlstyle{same}
\raggedbottom
\raggedright
\setlength{\tabcolsep}{0in}
% Sections formatting
\titleformat{\section}{
\vspace{-4pt}\scshape\raggedright\large
}{}{0em}{}[\color{black}\titlerule \vspace{-5pt}]
%-------------------------
% Custom commands
\newcommand{\resumeItem}[2]{
\item\small{
\textbf{#1}{: #2 \vspace{-2pt}}
}
}
\newcommand{\resumeSubheading}[4]{
\vspace{-1pt}\item
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
\textbf{#1} & #2 \\
\textit{\small#3} & \textit{\small #4} \\
\end{tabular*}\vspace{-5pt}
}
\newcommand{\resumeSubItem}[2]{\resumeItem{#1}{#2}\vspace{-4pt}}
\renewcommand{\labelitemii}{$\circ$}
\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=*]}
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}}
\newcommand{\resumeItemListStart}{\begin{itemize}}
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}}
%-------------------------------------------
%%%%%% CV STARTS HERE %%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
%----------HEADING-----------------
\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}r}
\textbf{{\Large Rock Liang}} & Email : \href{mailto:[email protected]}{[email protected]}\\
& Portfolio : \href{https://riotpiao.com}{riotpiao.com}\\
\end{tabular*}
%-----------Professional Summary-----------------
\section{Professional Summary}
\resumeItemListStart
\resumeItem{Experience}
{6+ years building scalable infrastructure, backend systems, and LLM-powered applications. Expertise in Kubernetes orchestration, Infrastructure-as-Code (Terraform), distributed systems design, and cloud-native architecture at AWS scale.}
\resumeItem{Core Competencies}
{Production Kubernetes (Talos, GitOps/ArgoCD), Terraform IaC, AWS distributed systems, Golang backend services, observability (Prometheus/Grafana), message queuing (Kafka/Temporal workflows), GPU inference (vLLM), zero-trust networking (OIDC/RBAC).}
\resumeItem{Strengths}
{Owning systems end-to-end—from design doc through oncall. Building fault-tolerant platforms. Unblocking teams with clear technical communication. 99.2% automation mindset.}
\resumeItemListEnd
%-----------EXPERIENCE-----------------
\section{Experience}
\resumeSubHeadingListStart
\resumeSubheading
{Self-Hosted Production (riotpiao.com)}{Home Lab}
{DevOps / SRE / SDE}{May 2025 — Present}
\resumeItemListStart
\resumeItem{Challenge \& Solution}
{Built AWS from scratch at home on bare-metal Kubernetes—Talos Linux for secure OS, ArgoCD for GitOps pipeline automation, SOPS for encrypted secrets, cert-manager for PKI. Result: production-grade multi-tenant platform with Kafka, PostgreSQL, S3, GPU LLM inference, Temporal workflows in 4-node cluster.}
\resumeItem{System Design}
{Architected Authentik OIDC SSO with Kubernetes RBAC; Longhorn block storage + MinIO S3-compatible API; CloudNativePG with pgvector for embeddings; vLLM GPU inference (Qwen3-32B) with KServe orchestration. Tech: \textbf{Kubernetes, Talos, ArgoCD, Terraform, Authentik, Prometheus, Grafana, vLLM, Temporal, Kafka, PostgreSQL, Go}}
\resumeItem{Observability \& Operations}
{Implemented full observability stack: Prometheus metrics, Grafana dashboards, Loki log aggregation, Tempo traces, OpenTelemetry. 99.2\% uptime maintained across core services via monitoring automation and runbooks. Tech: \textbf{Prometheus, Grafana, Loki, Tempo, OpenTelemetry}}
\resumeItem{Deployment Pipeline}
{GitOps-driven Forgejo CI/CD with Docker container registry; DinD runners for parallel builds. Kustomize manifests + Terraform for declarative infrastructure. Tech: \textbf{Forgejo, Docker, Kustomize, Terraform}}
\resumeItemListEnd
\resumeSubheading
{Royal Bank of Canada (RBC)}{Toronto, ON}
{Lead Software Engineer}{Nov 2024 — May 2026}
\resumeItemListStart
\resumeItem{Challenge \& Solution}
{Deployments were manual, blocking teams 2+ hours per release. Standardized on Terraform Cloud for idempotent IaC; built Temporal workflows for multi-cloud orchestration with built-in retry logic and idempotency keys. Reduced deploy time from 2 hours to 20 minutes, achieved 99.2\% automation.}
\resumeItem{Drift Detection \& Reconciliation}
{Built Kubernetes CronJob (Golang) to continuously detect and reconcile Terraform state drift against actual infrastructure. Automatically detects divergence and triggers remediation without manual operator intervention. Tech: \textbf{Golang, Kubernetes, Terraform, IaC}}
\resumeItem{Slack Notifications \& SLA}
{Designed Slack notification service with Golang workers to alert on apply failures and drift detection. Operators resolve issues in \textless 5 minutes via notification-driven workflow. Coordinated across 12 platform teams—unified 200+ microservices into single IaC standard. Tech: \textbf{Golang, Slack API, Distributed Systems}}
\resumeItem{Stakeholder Alignment}
{Led requirement gathering across 4 platform teams; translated technical decisions for non-technical stakeholders; secured buy-in for platform migration. Unblocked 3 stalled projects by disambiguating specs.}
\resumeItemListEnd
\resumeSubheading
{Amazon Web Services (AWS)}{Seattle, WA}
{Senior Software Engineer (Step Functions)}{2022 — 2024}
\resumeItemListStart
\resumeItem{Challenge \& Solution}
{Owned Distributed-Map from design doc to production launch across 57+ regions. Under tight deadline, introduced separate state in Map vs new functions—simplified customer adoption. Built checkpoint recovery for mid-workflow failures so customers resume without full re-run.}
\resumeItem{Distributed Systems Engineering}
{Solved critical edge cases: race conditions in concurrent updates, dependent service failures, message deduplication, exactly-once semantics. Introduced JSON state input for larger payloads—unlocked new customer use cases. Tech: \textbf{Java, DynamoDB, gRPC, Distributed Systems}}
\resumeItem{Production Ownership \& Reliability}
{Full oncall ownership—built CloudWatch dashboards, wrote operational runbooks, debugged production issues live. Achieved sub-100ms P99 latency across 57+ regions and 20x burst traffic scaling. Disaster recovery and incident response procedures. Tech: \textbf{Java, AWS, CloudWatch, Observability, Ownership}}
\resumeItemListEnd
\resumeSubheading
{Netflix Titus (Container Orchestration)}{Los Gatos, CA}
{Software Engineer Intern}{May — Aug 2019}
\resumeItemListStart
\resumeItem{Challenge \& Solution}
{Streamlined Personal Data Detection (PDD) to identify classified data exfiltration anomalies—achieved 97.8\% accuracy with minimal false positives. Built fault-tolerant Golang connector for PDD integration with 28\% p99 latency improvement over legacy implementation.}
\resumeItem{Compilation \& Integration}
{Re-integrated SmartRegex with CMake \& C++ on Linux/Unix platforms. Achieved 5x faster deployment through automated build pipeline and dependency resolution. Tech: \textbf{C++, CMake, Golang, Docker}}
\resumeItem{Impact}
{Prevented classified data leakage across Netflix's distributed workload platform. Improved SLA for data governance compliance teams.}
\resumeItemListEnd
\resumeSubheading
{NAV Canada (Air Traffic Control Systems)}{Ottawa, ON}
{Summer Student}{May — Aug 2018}
\resumeItemListStart
\resumeItem{Challenge \& Solution}
{Maintained enterprise CFPS web application in Agile development. Built Django NOTAMJ polls app to meet iteration goals. Improved deploy stability with Sonar code coverage analysis—reduced defect escape rate.}
\resumeItem{Frontend \& User Experience}
{Created FWGS weather briefing interface with ReactJS for Air Traffic Control. Real-time meteorological data visualization for pilot briefings. Tech: \textbf{ReactJS, Django, Agile, Sonar}}
\resumeItem{Impact}
{Improved ATC decision-making with cleaner weather briefing UX. Deployed to Canadian airspace (50+ airports).}
\resumeItemListEnd
\resumeSubHeadingListEnd
%--------PROGRAMMING SKILLS------------
\section{Technical Skills}
\resumeSubHeadingListStart
\item{\textbf{Languages}{: Golang, Java, Python, C++, JavaScript/TypeScript, SQL}}
\item{\textbf{Cloud \& Infrastructure}{: Kubernetes (Talos Linux, k3s), Terraform, Docker, ArgoCD, AWS (DynamoDB, Step Functions, CloudWatch), OpenShift}}
\item{\textbf{Distributed Systems}{: Temporal workflows, Kafka/Redpanda, gRPC, message queuing, exactly-once semantics, state management, disaster recovery}}
\item{\textbf{LLM \& AI}{: vLLM (GPU inference), KServe, Ollama, TEI embeddings, vector databases (pgvector)}}
\item{\textbf{Observability}{: Prometheus, Grafana, Loki, Tempo, OpenTelemetry, CloudWatch, alerting \& runbooks}}
\item{\textbf{Networking \& Security}{: Authentik OIDC SSO, cert-manager TLS, RBAC, SOPS encryption, Cloudflare Tunnel (zero-trust), network policies}}
\item{\textbf{Data}{: PostgreSQL, DynamoDB, MinIO S3, Longhorn storage, pgvector}}
\item{\textbf{CI/CD}{: Forgejo Actions, GitHub Actions, Docker registry, Kustomize, GitOps}}
\resumeSubHeadingListEnd
%-----------EDUCATION-----------------
\section{Education}
\resumeSubHeadingListStart
\resumeSubheading
{University of Ottawa}{Ottawa, Ontario}
{Master of Science in Computer Science (Software Systems)}{2020 — 2021}
\resumeSubheading
{University of Ottawa}{Ottawa, Ontario}
{Bachelor of Science in Computer Science (Honours)}{2016 — 2020}
\resumeSubHeadingListEnd
%-------------------------------------------
\end{document}