diff --git a/data/resume.yaml b/data/resume.yaml
index 85371af..0c7f38d 100644
--- a/data/resume.yaml
+++ b/data/resume.yaml
@@ -30,18 +30,17 @@ experience:
stack:
- Python
- TypeScript
+ - Docker
+ - Azure
- React
- - Azure OpenAI
- - Claude Code
- - Copilot
- Playwright
bullets:
- - "Owned the end-to-end Responsible AI (RAI) evaluation pipeline, executing critical harms assessments to gate model releases. Engineered custom retry mechanisms and architectural optimizations, reducing average pipeline execution time by **50%**."
- - "Engineered an automated synthetic data generation framework using LLMs, generating **70,000+** diverse queries and multi-step interaction trajectories across **20,000+** real-world Excel workbooks to power large-scale model evaluation pipelines."
- - "Served as on-call Shield Engineer, driving infrastructure reliability across evaluation pipelines—resolving session instabilities, engineering deterministic failure classification, and automating bug workflows to maintain **>95%** uptime."
- - "Architected KQL-driven telemetry dashboards to monitor pipeline clean run rates and infrastructure failures, establishing single-pane-of-glass observability across the evaluation platform."
- - "Shipped deterministic handling for RAI policy refusals in UI-less agent evaluations, ensuring robust diagnostic propagation and achieving 100% execution parity with UI-based paths."
- - "Implemented full-stack performance optimizations and WCAG-compliant accessibility features to the core Microsoft Excel web client (React/TypeScript), eliminating UI rendering bottlenecks for millions of enterprise users."
+ - "Owned the end-to-end Responsible AI (RAI) evaluation pipeline gating model releases; optimized execution latency by **50%** through asynchronous worker pools, intelligent request batching, and custom retry algorithms."
+ - "Onboarded next-generation multimodal AI agents into the core evaluation platform, designing pluggable backend adapters, isolated container sandboxes (Docker), and concurrent distributed cloud runtimes with robust IPC and telemetry capture."
+ - "Designed and scaled an automated synthetic data engine orchestrating parallel LLM workers; modeled complex spreadsheet state graphs to generate **70,000+** multi-step interaction trajectories across **20,000+** enterprise workbooks."
+ - "Served as on-call engineer driving infrastructure reliability across evaluation pipelines—resolving live-site instabilities, engineering deterministic failure classification, and automating bug workflows to maintain **>95%** uptime."
+ - "Designed real-time telemetry ingestion pipelines and KQL aggregations processing **millions** of pipeline events daily, establishing single-pane observability dashboards and automated root-cause triage."
+ - "Optimized client-side rendering pipelines and state management for the core Microsoft Excel web client (React/TypeScript), eliminating UI rendering bottlenecks and meeting WCAG accessibility standards for millions of enterprise users."
- company: Advanced Micro Devices (AMD)
role: System Software Designer
@@ -51,28 +50,15 @@ experience:
stack:
- C/C++
- Java (OpenJDK)
+ - Linux perf
- Python
- Django
- React
- SQLite
bullets:
- - "Engineered a visualization dashboard and RESTful API for OpenJDK telemetry, increasing internal data accessibility by **40%**."
+ - "Engineered a high-throughput visualization dashboard and RESTful API for OpenJDK telemetry, optimizing database queries to increase internal data accessibility by **40%**."
- "Automated nightly Java benchmarking and tuning pipelines using machine learning models, achieving a **30%** reduction in manual effort and earning the **Spotlight Award**."
- - "Optimized JVM flags, GC policies, and runtime parameters for OpenJDK on High Performance Computing (HPC) servers, achieving a **2%** throughput improvement on SPECjbb benchmarks."
-
- - company: Chromium
- role: Google Summer of Code Contributor (Open Source Developer)
- location: Remote
- start: May 2022
- end: Aug 2022
- stack:
- - C++
- - JavaScript/TypeScript
- - WebAssembly
- - WebAudio
- - WebWorkers
- bullets:
- - "Engineered a lock-free C++ ring buffer as a reference library for real-time audio streaming between WebAudio, WebAssembly, and WebWorkers, benchmarking multiple concurrency strategies."
+ - "Profiled CPU and memory bottlenecks using Linux perf; optimized JVM flags, GC policies, and runtime parameters on HPC servers to achieve a **2%** throughput improvement on SPECjbb benchmarks."
skills:
- type: Programming Languages
@@ -81,12 +67,14 @@ skills:
- Python
- Go (Golang)
- Java
+ - Kotlin
- TypeScript
- Bash
- type: Frameworks & Tools
items:
- PyTorch
- Azure OpenAI
+ - Android SDK / NDK
- React/Next.js
- Django/Flask
- Node.js
@@ -102,6 +90,42 @@ skills:
- PostgreSQL
- Redis
+open_source:
+ - name: "Chromium (Google Summer of Code)"
+ stack:
+ - C++
+ - WebAssembly
+ - WebAudio
+ - WebWorkers
+ bullets:
+ - "Engineered a lock-free C++ ring buffer as a reference library for real-time audio streaming between WebAudio, WebAssembly, and WebWorkers, benchmarking multiple concurrency strategies."
+
+ - name: "The Tor Project"
+ role: Contributor
+ stack:
+ - Kotlin
+ - Android SDK
+ - Rust
+ - JavaScript
+ - VPNService
+ bullets:
+ - "Contributed across Tor Project client and web applications; engineered routing resilience and lifecycle management for the Tor VPN Android app, and developed enhancements for Tor Web platforms."
+ links:
+ - display: "gitlab.torproject.org/tpo"
+ url: "https://gitlab.torproject.org/tpo"
+
+ - name: "p5.js (Processing Foundation)"
+ role: Contributor
+ stack:
+ - JavaScript
+ - HTML5 Canvas
+ - WebGL
+ bullets:
+ - "Contributed core library improvements and rendering fixes to p5.js, optimizing canvas event handling and cross-browser graphic performance."
+ links:
+ - display: "github.com/processing/p5.js"
+ url: "https://github.com/processing/p5.js"
+
projects:
- name: "fastbin: a code sharing webapp"
stack:
@@ -112,7 +136,7 @@ projects:
- Docker
- Kubernetes
bullets:
- - "Code sharing service with a gRPC microservices architecture, containerized and live-deployed on a self-hosted Kubernetes cluster."
+ - "Built a high-performance code sharing backend in Go utilizing gRPC Protobuf microservices, PostgreSQL with connection pooling and optimized indexing, containerized with Docker and deployed on Kubernetes."
links:
- display: "git.divyam.dev/divyam/fastbin"
url: "https://git.divyam.dev/divyam/fastbin"
@@ -127,7 +151,7 @@ projects:
- Rancher
- MetalLB
bullets:
- - "Personal infrastructure hosting containerized services, with WireGuard VPN tunneling to a public VPS for secure external access."
+ - "Personal infrastructure hosting containerized services with WireGuard VPN tunneling, MetalLB load balancing, and Rancher-managed Kubernetes, enabling secure, high-availability external access."
education:
- school: Deenbandhu Chhotu Ram University of Science and Technology
diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html
index 68d5ee5..e843ba6 100644
--- a/layouts/_default/baseof.html
+++ b/layouts/_default/baseof.html
@@ -1,5 +1,5 @@
-
+
{{- partial "head.html" . -}}
diff --git a/layouts/_default/resume.html b/layouts/_default/resume.html
index cc15762..94c2412 100644
--- a/layouts/_default/resume.html
+++ b/layouts/_default/resume.html
@@ -1,5 +1,5 @@
{{ define "main" }}
-{{- $r := site.Data.resume -}}
+{{- $r := hugo.Data.resume -}}
+ {{- with $r.open_source }}
+
+ Open Source Contributions
+ {{- range . }}
+
+
+ {{- with .stack }}
+
{{ delimit . ", " }}
+ {{- end }}
+ {{- with .bullets }}
+
+ {{- range . }}
+ - {{ . | markdownify }}
+ {{- end }}
+
+ {{- end }}
+ {{- with .links }}
+
+ {{- range . }}
+
{{ .display }}
+ {{- end }}
+
+ {{- end }}
+
+ {{- end }}
+
+ {{- end }}
+
Projects
{{- range $r.projects }}
diff --git a/resume/main.typ b/resume/main.typ
index 72121ef..2046556 100644
--- a/resume/main.typ
+++ b/resume/main.typ
@@ -3,13 +3,13 @@
#let data = yaml("../data/resume.yaml")
-#set page(paper: "a4", margin: (x: 0.5in, y: 0.35in))
+#set page(paper: "a4", margin: (x: 0.45in, y: 0.3in))
#set document(title: data.name + "'s Resume", author: data.name)
-#set par(leading: 0.55em)
-#set text(font: "Source Sans 3", size: 10pt)
-#set underline(offset: 2.5pt)
+#set par(leading: 0.5em)
+#set text(font: "Source Sans 3", size: 9.5pt)
+#set underline(offset: 2pt)
#show heading: set text(weight: "semibold")
-#show heading: it => { v(4pt); it; v(2pt) }
+#show heading: it => { v(3pt); it; v(1.5pt) }
// --- Markdown bold **text** → Typst bold *text* ---
#let md(s) = {
@@ -69,6 +69,12 @@
body
}
+// --- Open Source entry ---
+#let openSourceItem(body, name: "", role: "", stack: ()) = {
+ text(weight: "semibold")[#name] + if role != "" [ (#role)] + if stack.len() > 0 [ | #stack.join(", ")]
+ body
+}
+
// --- Project entry ---
#let project(body, name: "", stack: ()) = {
text(weight: "semibold")[#name] + if stack.len() > 0 {
@@ -109,16 +115,12 @@
#v(9pt, weak: true)
#text(size: 14pt)[#data.role]
-// Contact links — first row
+// Contact links
#linksBar((
(icon: "phone", url: data.contact.phone.url, display: data.contact.phone.display),
(icon: "email", url: data.contact.email.url),
(icon: "website", url: data.contact.website.url, display: data.contact.website.display),
(icon: "linkedin", url: data.contact.linkedin.url, display: data.contact.linkedin.display),
-))
-#linebreak()
-// Contact links — second row
-#linksBar((
(icon: "git", url: data.contact.git.url, display: data.contact.git.display),
(icon: "github", url: data.contact.github.url, display: data.contact.github.display),
))
@@ -151,6 +153,22 @@
[#text(weight: "semibold")[#skill.type]: #skill.items.join(", ") \ ]
}
+// --- Open Source ---
+#if "open_source" in data.keys() and data.open_source.len() > 0 {
+ [= Open Source]
+ for os in data.open_source {
+ openSourceItem(name: os.name, role: os.at("role", default: ""), stack: os.at("stack", default: ()))[
+ #for bullet in os.at("bullets", default: ()) {
+ [- #md(bullet)]
+ }
+ #let links = os.at("links", default: ())
+ #if links.len() > 0 {
+ [- #links.map(l => underline(link(l.url)[#l.display])).join(", ")]
+ }
+ ]
+ }
+}
+
// --- Projects ---
= Projects
#for p in data.projects {
diff --git a/static/resume.pdf b/static/resume.pdf
index 2532727..5a7c1c2 100644
--- a/static/resume.pdf
+++ b/static/resume.pdf
@@ -2,1948 +2,687 @@
%
1 0 obj
-<<
- /Type /Pages
- /Count 1
- /Kids [164 0 R]
->>
+<>
endobj
-
2 0 obj
-<<
- /Type /Outlines
- /First 3 0 R
- /Last 6 0 R
- /Count 4
->>
+<>
endobj
-
3 0 obj
-<<
- /Parent 2 0 R
- /Next 4 0 R
- /Title (Experience)
- /Dest 152 0 R
->>
+<>
endobj
-
4 0 obj
-<<
- /Parent 2 0 R
- /Next 5 0 R
- /Prev 3 0 R
- /Title (Skills)
- /Dest 153 0 R
->>
+<>
endobj
-
5 0 obj
-<<
- /Parent 2 0 R
- /Next 6 0 R
- /Prev 4 0 R
- /Title (Projects)
- /Dest 154 0 R
->>
+<>
endobj
-
6 0 obj
-<<
- /Parent 2 0 R
- /Prev 5 0 R
- /Title (Education)
- /Dest 155 0 R
->>
+<>
endobj
-
7 0 obj
-<<
- /Type /StructTreeRoot
- /RoleMap <<
- /Datetime /Span
- /Terms /Part
- /Title /P
- /Strong /Span
- /Em /Span
- >>
- /K [9 0 R]
- /ParentTree <<
- /Nums [0 126 0 R 1 124 0 R 2 122 0 R 3 120 0 R 4 118 0 R 5 116 0 R 6 30 0 R 7 28 0 R 8 8 0 R]
- >>
- /ParentTreeNextKey 9
->>
+<>
endobj
-
8 0 obj
-[129 0 R 128 0 R 127 0 R 126 0 R 125 0 R 124 0 R 123 0 R 122 0 R 121 0 R 120 0 R 119 0 R 118 0 R 117 0 R 116 0 R 114 0 R 113 0 R 111 0 R 109 0 R 107 0 R 105 0 R 102 0 R 100 0 R 100 0 R 100 0 R 101 0 R 100 0 R 98 0 R 95 0 R 97 0 R 95 0 R 95 0 R 96 0 R 95 0 R 93 0 R 91 0 R 91 0 R 92 0 R 91 0 R 89 0 R 88 0 R 88 0 R 86 0 R 85 0 R 85 0 R 83 0 R 82 0 R 82 0 R 79 0 R 77 0 R 75 0 R 73 0 R 71 0 R 68 0 R 66 0 R 67 0 R 66 0 R 64 0 R 61 0 R 63 0 R 61 0 R 61 0 R 62 0 R 61 0 R 59 0 R 57 0 R 57 0 R 58 0 R 57 0 R 54 0 R 52 0 R 50 0 R 48 0 R 46 0 R 43 0 R 42 0 R 42 0 R 39 0 R 38 0 R 38 0 R 38 0 R 38 0 R 38 0 R 38 0 R 37 0 R 36 0 R 36 0 R 35 0 R 34 0 R 34 0 R 32 0 R 31 0 R 27 0 R 29 0 R 24 0 R 24 0 R 23 0 R 22 0 R 22 0 R 19 0 R 18 0 R 16 0 R 14 0 R 12 0 R]
+<>/K[142 0 R]/ParentTree<>/ParentTreeNextKey 11>>
endobj
-
9 0 obj
-<<
- /Type /StructElem
- /S /Document
- /P 7 0 R
- /K [129 0 R 128 0 R 115 0 R 114 0 R 103 0 R 80 0 R 69 0 R 55 0 R 44 0 R 40 0 R 39 0 R 38 0 R 37 0 R 36 0 R 25 0 R 24 0 R 20 0 R 19 0 R 10 0 R]
->>
+[10 0 R 11 0 R 12 0 R 13 0 R 14 0 R 15 0 R 16 0 R 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R 22 0 R 23 0 R 25 0 R 26 0 R 28 0 R 30 0 R 32 0 R 34 0 R 37 0 R 39 0 R 38 0 R 39 0 R 39 0 R 41 0 R 42 0 R 42 0 R 44 0 R 47 0 R 47 0 R 45 0 R 47 0 R 46 0 R 47 0 R 49 0 R 51 0 R 51 0 R 50 0 R 51 0 R 53 0 R 55 0 R 54 0 R 55 0 R 55 0 R 57 0 R 58 0 R 58 0 R 61 0 R 63 0 R 65 0 R 67 0 R 69 0 R 72 0 R 74 0 R 74 0 R 73 0 R 74 0 R 76 0 R 79 0 R 77 0 R 79 0 R 79 0 R 78 0 R 79 0 R 81 0 R 83 0 R 83 0 R 82 0 R 83 0 R 86 0 R 87 0 R 87 0 R 87 0 R 87 0 R 87 0 R 87 0 R 88 0 R 89 0 R 89 0 R 90 0 R 91 0 R 91 0 R 94 0 R 94 0 R 95 0 R 96 0 R 96 0 R 98 0 R 99 0 R 104 0 R 104 0 R 105 0 R 106 0 R 106 0 R 108 0 R 109 0 R 114 0 R 115 0 R 115 0 R 116 0 R 117 0 R 117 0 R 119 0 R 120 0 R 124 0 R 122 0 R 127 0 R 127 0 R 128 0 R 129 0 R 129 0 R 132 0 R 133 0 R 135 0 R 137 0 R 139 0 R]
endobj
-
10 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 9 0 R
- /K [17 0 R 15 0 R 13 0 R 11 0 R]
->>
+<>
endobj
-
11 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 10 0 R
- /K [12 0 R]
->>
+<>
endobj
-
12 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 11 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [102]
- /Pg 164 0 R
->>
+<>]/K[2]/Pg 170 0 R>>
endobj
-
13 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 10 0 R
- /K [14 0 R]
->>
+<>]/Pg 170 0 R>>
endobj
-
14 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 13 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [101]
- /Pg 164 0 R
->>
+<>]/K[4]/Pg 170 0 R>>
endobj
-
15 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 10 0 R
- /K [16 0 R]
->>
+<>]/Pg 170 0 R>>
endobj
-
16 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 15 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [100]
- /Pg 164 0 R
->>
+<>]/K[6]/Pg 170 0 R>>
endobj
-
17 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 10 0 R
- /K [18 0 R]
->>
+<>]/Pg 170 0 R>>
endobj
-
18 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 17 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [99]
- /Pg 164 0 R
->>
+<>]/K[8]/Pg 170 0 R>>
endobj
-
19 0 obj
-<<
- /Type /StructElem
- /S /H1
- /P 9 0 R
- /T (Education)
- /K [98]
- /Pg 164 0 R
->>
+<>]/Pg 170 0 R>>
endobj
-
20 0 obj
-<<
- /Type /StructElem
- /S /L
- /P 9 0 R
- /A [<<
- /O /List
- /ListNumbering /Circle
- >>]
- /K [21 0 R]
->>
+<>]/K[10]/Pg 170 0 R>>
endobj
-
21 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 20 0 R
- /K [23 0 R 22 0 R]
->>
+<>]/Pg 170 0 R>>
endobj
-
22 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 21 0 R
- /K [96 97]
- /Pg 164 0 R
->>
+<>]/K[12]/Pg 170 0 R>>
endobj
-
23 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 21 0 R
- /K [95]
- /Pg 164 0 R
->>
+<>]/Pg 170 0 R>>
endobj
-
24 0 obj
-<<
- /Type /StructElem
- /S /P
- /P 9 0 R
- /K [93 94]
- /Pg 164 0 R
->>
+<>
endobj
-
25 0 obj
-<<
- /Type /StructElem
- /S /L
- /P 9 0 R
- /A [<<
- /O /List
- /ListNumbering /Circle
- >>]
- /K [33 0 R 26 0 R]
->>
+<>
endobj
-
26 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 25 0 R
- /K [32 0 R 27 0 R]
->>
+<>]/K[15]/Pg 170 0 R>>
endobj
-
27 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 26 0 R
- /K [30 0 R 91 28 0 R]
- /Pg 164 0 R
->>
+<>
endobj
-
28 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 27 0 R
- /K [29 0 R <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 163 0 R
- >>]
->>
+<>]/K[16]/Pg 170 0 R>>
endobj
-
29 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 28 0 R
- /A [<<
- /O /Layout
- /TextDecorationType /Underline
- >>]
- /K [92]
- /Pg 164 0 R
->>
+<>
endobj
-
30 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 27 0 R
- /K [31 0 R <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 162 0 R
- >>]
->>
+<>]/K[17]/Pg 170 0 R>>
endobj
-
31 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 30 0 R
- /A [<<
- /O /Layout
- /TextDecorationType /Underline
- >>]
- /K [90]
- /Pg 164 0 R
->>
+<>
endobj
-
32 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 26 0 R
- /K [89]
- /Pg 164 0 R
->>
+<>]/K[18]/Pg 170 0 R>>
endobj
-
33 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 25 0 R
- /K [35 0 R 34 0 R]
->>
+<>
endobj
-
34 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 33 0 R
- /K [87 88]
- /Pg 164 0 R
->>
+<>]/K[19]/Pg 170 0 R>>
endobj
-
35 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 33 0 R
- /K [86]
- /Pg 164 0 R
->>
+<>
endobj
-
36 0 obj
-<<
- /Type /StructElem
- /S /P
- /P 9 0 R
- /K [84 85]
- /Pg 164 0 R
->>
+<>
endobj
-
37 0 obj
-<<
- /Type /StructElem
- /S /H1
- /P 9 0 R
- /T (Projects)
- /K [83]
- /Pg 164 0 R
->>
+<>
endobj
-
38 0 obj
-<<
- /Type /StructElem
- /S /P
- /P 9 0 R
- /K [77 78 79 80 81 82]
- /Pg 164 0 R
->>
+<>
endobj
-
39 0 obj
-<<
- /Type /StructElem
- /S /H1
- /P 9 0 R
- /T (Skills)
- /K [76]
- /Pg 164 0 R
->>
+<>
endobj
-
40 0 obj
-<<
- /Type /StructElem
- /S /L
- /P 9 0 R
- /A [<<
- /O /List
- /ListNumbering /Circle
- >>]
- /K [41 0 R]
->>
+<>
endobj
-
41 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 40 0 R
- /K [43 0 R 42 0 R]
->>
+<>
endobj
-
42 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 41 0 R
- /K [74 75]
- /Pg 164 0 R
->>
+<>
endobj
-
43 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 41 0 R
- /K [73]
- /Pg 164 0 R
->>
+<>
endobj
-
44 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 9 0 R
- /K [53 0 R 51 0 R 49 0 R 47 0 R 45 0 R]
->>
+<>
endobj
-
45 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 44 0 R
- /K [46 0 R]
->>
+<>
endobj
-
46 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 45 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [72]
- /Pg 164 0 R
->>
+<>
endobj
-
47 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 44 0 R
- /K [48 0 R]
->>
+<>
endobj
-
48 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 47 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [71]
- /Pg 164 0 R
->>
+<>
endobj
-
49 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 44 0 R
- /K [50 0 R]
->>
+<>
endobj
-
50 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 49 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [70]
- /Pg 164 0 R
->>
+<>
endobj
-
51 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 44 0 R
- /K [52 0 R]
->>
+<>
endobj
-
52 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 51 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [69]
- /Pg 164 0 R
->>
+<>
endobj
-
53 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 44 0 R
- /K [54 0 R]
->>
+<>
endobj
-
54 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 53 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [68]
- /Pg 164 0 R
->>
+<>
endobj
-
55 0 obj
-<<
- /Type /StructElem
- /S /L
- /P 9 0 R
- /A [<<
- /O /List
- /ListNumbering /Circle
- >>]
- /K [65 0 R 60 0 R 56 0 R]
->>
+<>
endobj
-
56 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 55 0 R
- /K [59 0 R 57 0 R]
->>
+<>
endobj
-
57 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 56 0 R
- /K [64 65 58 0 R 67]
- /Pg 164 0 R
->>
+<>
endobj
-
58 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 57 0 R
- /K [66]
- /Pg 164 0 R
->>
+<>
endobj
-
59 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 56 0 R
- /K [63]
- /Pg 164 0 R
->>
+<>
endobj
-
60 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 55 0 R
- /K [64 0 R 61 0 R]
->>
+<>]/K[40 0 R 43 0 R 48 0 R 52 0 R 56 0 R 59 0 R]>>
endobj
-
61 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 60 0 R
- /K [57 63 0 R 59 60 62 0 R 62]
- /Pg 164 0 R
->>
+<>]/K[48]/Pg 170 0 R>>
endobj
-
62 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 61 0 R
- /K [61]
- /Pg 164 0 R
->>
+<>
endobj
-
63 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 61 0 R
- /K [58]
- /Pg 164 0 R
->>
+<>]/K[49]/Pg 170 0 R>>
endobj
-
64 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 60 0 R
- /K [56]
- /Pg 164 0 R
->>
+<>
endobj
-
65 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 55 0 R
- /K [68 0 R 66 0 R]
->>
+<>]/K[50]/Pg 170 0 R>>
endobj
-
66 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 65 0 R
- /K [53 67 0 R 55]
- /Pg 164 0 R
->>
+<>
endobj
-
67 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 66 0 R
- /K [54]
- /Pg 164 0 R
->>
+<>]/K[51]/Pg 170 0 R>>
endobj
-
68 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 65 0 R
- /K [52]
- /Pg 164 0 R
->>
+<>
endobj
-
69 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 9 0 R
- /K [78 0 R 76 0 R 74 0 R 72 0 R 70 0 R]
->>
+<>]/K[52]/Pg 170 0 R>>
endobj
-
70 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 69 0 R
- /K [71 0 R]
->>
+<>
endobj
-
71 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 70 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [51]
- /Pg 164 0 R
->>
+<>
endobj
-
72 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 69 0 R
- /K [73 0 R]
->>
+<>
endobj
-
73 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 72 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [50]
- /Pg 164 0 R
->>
+<>
endobj
-
74 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 69 0 R
- /K [75 0 R]
->>
+<>
endobj
-
75 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 74 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [49]
- /Pg 164 0 R
->>
+<>
endobj
-
76 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 69 0 R
- /K [77 0 R]
->>
+<>
endobj
-
77 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 76 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [48]
- /Pg 164 0 R
->>
+<>
endobj
-
78 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 69 0 R
- /K [79 0 R]
->>
+<>
endobj
-
79 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 78 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [47]
- /Pg 164 0 R
->>
+<>
endobj
-
80 0 obj
-<<
- /Type /StructElem
- /S /L
- /P 9 0 R
- /A [<<
- /O /List
- /ListNumbering /Circle
- >>]
- /K [99 0 R 94 0 R 90 0 R 87 0 R 84 0 R 81 0 R]
->>
+<>
endobj
-
81 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 80 0 R
- /K [83 0 R 82 0 R]
->>
+<>
endobj
-
82 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 81 0 R
- /K [45 46]
- /Pg 164 0 R
->>
+<>
endobj
-
83 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 81 0 R
- /K [44]
- /Pg 164 0 R
->>
+<>
endobj
-
84 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 80 0 R
- /K [86 0 R 85 0 R]
->>
+<>
endobj
-
85 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 84 0 R
- /K [42 43]
- /Pg 164 0 R
->>
+<>]/K[75 0 R 80 0 R 84 0 R]>>
endobj
-
86 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 84 0 R
- /K [41]
- /Pg 164 0 R
->>
+<>
endobj
-
87 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 80 0 R
- /K [89 0 R 88 0 R]
->>
+<>
endobj
-
88 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 87 0 R
- /K [39 40]
- /Pg 164 0 R
->>
+<>
endobj
-
89 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 87 0 R
- /K [38]
- /Pg 164 0 R
->>
+<>
endobj
-
90 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 80 0 R
- /K [93 0 R 91 0 R]
->>
+<>
endobj
-
91 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 90 0 R
- /K [34 35 92 0 R 37]
- /Pg 164 0 R
->>
+<>
endobj
-
92 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 91 0 R
- /K [36]
- /Pg 164 0 R
->>
+<>
endobj
-
93 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 90 0 R
- /K [33]
- /Pg 164 0 R
->>
+<>]/K[92 0 R]>>
endobj
-
94 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 80 0 R
- /K [98 0 R 95 0 R]
->>
+<>
endobj
-
95 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 94 0 R
- /K [27 97 0 R 29 30 96 0 R 32]
- /Pg 164 0 R
->>
+<>
endobj
-
96 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 95 0 R
- /K [31]
- /Pg 164 0 R
->>
+<>
endobj
-
97 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 95 0 R
- /K [28]
- /Pg 164 0 R
->>
+<>
endobj
-
98 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 94 0 R
- /K [26]
- /Pg 164 0 R
->>
+<>
endobj
-
99 0 obj
-<<
- /Type /StructElem
- /S /LI
- /P 80 0 R
- /K [102 0 R 100 0 R]
->>
+<>]/K[89]/Pg 170 0 R>>
endobj
-
100 0 obj
-<<
- /Type /StructElem
- /S /LBody
- /P 99 0 R
- /K [21 22 23 101 0 R 25]
- /Pg 164 0 R
->>
+<>]>>
endobj
-
101 0 obj
-<<
- /Type /StructElem
- /S /Strong
- /P 100 0 R
- /K [24]
- /Pg 164 0 R
->>
+<>
endobj
-
102 0 obj
-<<
- /Type /StructElem
- /S /Lbl
- /P 99 0 R
- /K [20]
- /Pg 164 0 R
->>
+<>
endobj
-
103 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 9 0 R
- /K [112 0 R 110 0 R 108 0 R 106 0 R 104 0 R]
->>
+<>]/K[97 0 R 102 0 R]>>
endobj
-
104 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 103 0 R
- /K [105 0 R]
->>
+<>
endobj
-
105 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 104 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [19]
- /Pg 164 0 R
->>
+<>
endobj
-
106 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 103 0 R
- /K [107 0 R]
->>
+<>
endobj
-
107 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 106 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [18]
- /Pg 164 0 R
->>
+<>
endobj
-
108 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 103 0 R
- /K [109 0 R]
->>
+<>
endobj
-
109 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 108 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [17]
- /Pg 164 0 R
->>
+<>]/K[96]/Pg 170 0 R>>
endobj
-
110 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 103 0 R
- /K [111 0 R]
->>
+<>]>>
endobj
-
111 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 110 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [16]
- /Pg 164 0 R
->>
+<>
endobj
-
112 0 obj
-<<
- /Type /StructElem
- /S /Div
- /P 103 0 R
- /K [113 0 R]
->>
+<>
endobj
-
113 0 obj
-<<
- /Type /StructElem
- /S /Span
- /P 112 0 R
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [15]
- /Pg 164 0 R
->>
+<>]/K[107 0 R 112 0 R]>>
endobj
-
114 0 obj
-<<
- /Type /StructElem
- /S /H1
- /P 9 0 R
- /T (Experience)
- /K [14]
- /Pg 164 0 R
->>
+<>
endobj
-
115 0 obj
-<<
- /Type /StructElem
- /S /P
- /P 9 0 R
- /K [127 0 R 126 0 R 125 0 R 124 0 R 123 0 R 122 0 R 121 0 R 120 0 R 119 0 R 118 0 R 117 0 R 116 0 R]
->>
+<>
endobj
-
116 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 115 0 R
- /K [13 <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 161 0 R
- >>]
- /Pg 164 0 R
->>
+<>
endobj
-
117 0 obj
-<<
- /Type /StructElem
- /S /Figure
- /P 115 0 R
- /Alt (github)
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [12]
- /Pg 164 0 R
->>
+<>
endobj
-
118 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 115 0 R
- /K [11 <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 160 0 R
- >>]
- /Pg 164 0 R
->>
+<>
endobj
-
119 0 obj
-<<
- /Type /StructElem
- /S /Figure
- /P 115 0 R
- /Alt (git)
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [10]
- /Pg 164 0 R
->>
+<>
endobj
-
120 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 115 0 R
- /K [9 <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 159 0 R
- >>]
- /Pg 164 0 R
->>
+<>]/K[104]/Pg 170 0 R>>
endobj
-
121 0 obj
-<<
- /Type /StructElem
- /S /Figure
- /P 115 0 R
- /Alt (linkedin)
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [8]
- /Pg 164 0 R
->>
+<>]>>
endobj
-
122 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 115 0 R
- /K [7 <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 158 0 R
- >>]
- /Pg 164 0 R
->>
+<>]/K[106]/Pg 170 0 R>>
endobj
-
123 0 obj
-<<
- /Type /StructElem
- /S /Figure
- /P 115 0 R
- /Alt (website)
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [6]
- /Pg 164 0 R
->>
+<>]>>
endobj
-
124 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 115 0 R
- /K [5 <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 157 0 R
- >>]
- /Pg 164 0 R
->>
+<>
endobj
-
125 0 obj
-<<
- /Type /StructElem
- /S /Figure
- /P 115 0 R
- /Alt (email)
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [4]
- /Pg 164 0 R
->>
+<>
endobj
-
126 0 obj
-<<
- /Type /StructElem
- /S /Link
- /P 115 0 R
- /K [3 <<
- /Type /OBJR
- /Pg 164 0 R
- /Obj 156 0 R
- >>]
- /Pg 164 0 R
->>
+<>]/K[118 0 R 125 0 R]>>
endobj
-
127 0 obj
-<<
- /Type /StructElem
- /S /Figure
- /P 115 0 R
- /Alt (phone)
- /A [<<
- /O /Layout
- /Placement /Block
- >>]
- /K [2]
- /Pg 164 0 R
->>
+<>
endobj
-
128 0 obj
-<<
- /Type /StructElem
- /S /P
- /P 9 0 R
- /K [1]
- /Pg 164 0 R
->>
+<>
endobj
-
129 0 obj
-<<
- /Type /StructElem
- /S /P
- /P 9 0 R
- /K [0]
- /Pg 164 0 R
->>
+<>
endobj
-
130 0 obj
-<<
- /Type /Font
- /Subtype /Type0
- /BaseFont /ZRCNIA+SourceSans3-SemiBold
- /Encoding /Identity-H
- /DescendantFonts [131 0 R]
- /ToUnicode 134 0 R
->>
+<>
endobj
-
131 0 obj
-<<
- /Type /Font
- /Subtype /CIDFontType2
- /BaseFont /ZRCNIA+SourceSans3-SemiBold
- /CIDSystemInfo <<
- /Registry (Adobe)
- /Ordering (Identity)
- /Supplement 0
- >>
- /FontDescriptor 133 0 R
- /DW 0
- /CIDToGIDMap /Identity
- /W [0 0 672 1 1 625 2 2 262 3 4 495 5 5 516 6 6 843 7 7 200 8 9 558 10 10 556 11 11 263 12 12 538 13 13 481 14 14 564 15 15 507.00003 16 16 373 17 17 560 18 18 462 19 19 745 20 20 549 21 21 431 22 22 642 23 23 545 24 24 748 25 25 520 26 26 564 27 28 324 29 29 361 30 30 576 31 31 628 32 32 271 33 33 317 34 34 563 35 35 674 36 36 522 37 37 582 38 38 501.99997 39 39 510 40 40 639 41 41 546 42 42 282 43 43 275 44 44 663 45 45 592 46 46 655 47 47 597 48 48 275]
->>
+<>]/K[130 0 R]>>
endobj
-
132 0 obj
-<<
- /Length 13
- /Filter /FlateDecode
->>
-stream
-x>
-endstream
+<>
endobj
-
133 0 obj
-<<
- /Type /FontDescriptor
- /FontName /ZRCNIA+SourceSans3-SemiBold
- /Flags 131076
- /FontBBox [-69 -217 776 734]
- /ItalicAngle 0
- /Ascent 1024
- /Descent -400
- /CapHeight 660
- /StemV 144.2
- /CIDSet 132 0 R
- /FontFile2 135 0 R
->>
+<>]/K[113]/Pg 170 0 R>>
endobj
-
134 0 obj
-<<
- /Length 1282
- /Type /CMap
- /WMode 0
->>
-stream
-%!PS-Adobe-3.0 Resource-CMap
-%%DocumentNeededResources: procset CIDInit
-%%IncludeResource: procset CIDInit
-%%BeginResource: CMap Custom
-%%Title: (Custom Adobe Identity 0)
-%%Version: 1
-%%EndComments
-/CIDInit /ProcSet findresource begin
-12 dict begin
-begincmap
-/CIDSystemInfo 3 dict dup begin
- /Registry (Adobe) def
- /Ordering (Identity) def
- /Supplement 0 def
-end def
-/CMapName /Custom def
-/CMapVersion 1 def
-/CMapType 0 def
-/WMode 0 def
-1 begincodespacerange
-<0000>
-endcodespacerange
-48 beginbfchar
-<0001> <0044>
-<0002> <0069>
-<0003> <0076>
-<0004> <0079>
-<0005> <0061>
-<0006> <006D>
-<0007> <0020>
-<0008> <0041>
-<0009> <0068>
-<000A> <0075>
-<000B> <006A>
-<000C> <0045>
-<000D> <0078>
-<000E> <0070>
-<000F> <0065>
-<0010> <0072>
-<0011> <006E>
-<0012> <0063>
-<0013> <004D>
-<0014> <006F>
-<0015> <0073>
-<0016> <00660074>
-<0017> <0053>
-<0018> <0077>
-<0019> <0067>
-<001A> <0064>
-<001B> <0028>
-<001C> <0029>
-<001D> <0074>
-<001E> <0043>
-<001F> <0047>
-<0020> <006C>
-<0021> <0066>
-<0022> <0062>
-<0023> <004F>
-<0024> <006B>
-<0025> <0050>
-<0026> <004C>
-<0027> <0046>
-<0028> <0026>
-<0029> <0054>
-<002A> <0049>
-<002B> <003A>
-<002C> <0048>
-<002D> <0052>
-<002E> <0055>
-<002F> <0042>
-<0030> <002E>
-endbfchar
-endcmap
-CMapName currentdict /CMap defineresource pop
-end
-end
-%%EndResource
-%%EOF
-endstream
+<>
endobj
-
135 0 obj
-<<
- /Length 4187
- /Filter /FlateDecode
->>
-stream
-xXpcyΑ|eC,KWKeK~I-lûز,#kffh-IJ;6L2R(h!%8CJpشR\^i{ϕH
-$(i]x
1gK3M@ygؖ֒'1PZ]Ϭ Vfn@) Ϟz
-(n~c=|&|kcsac{@<t> (F)4@BeVUUB!Nrl.}F㑺/6ܶNbqSǎyik Em4EVj5j:_0Vk{gڅ^Z])aitdћ %A (d@B"ZB̐BhCOunf+wUG,vGH|PEtEm**J3L3PD>Zz͟dBucwf\C~{*:C"Qk~Qrmʶ>Gxf:_j7
-CfMTVC*Utwj`?UQ0U
-H5XD'OU3r*:/5Eݡ6u3ԟ9}UjluZodRM=~
-4@4B2*ۙG2I(`7"iaUB>&9Ck_TV+zjV정ф4KjtU9+-Q-P *I]7~Px}5}vw&y="|9f!?h
-bhAc51r1ijgAP&[ e}鬎.PV)s_VeE@lTj4꓿lF[Ѹt3GL5a3>C)M!'hb@kf̙F_U)\O+#gc>S]iP[gf\cgug9{Ġpu6StGmK͝%wVgopZ(ÉDuXt465G%b\cjOeYGD^2}N.jӑ#^AJ$7v#"o~LKC{![ wj2Y1K3O˻VuՇJjVQ%=Qe81:KkhVkdC)Dr(`*X%jT6
-JRJq|Կ2Jey4)lMmgԚFO؞0?ga^|At nCtW::Vvf!G816r74!U&_'PZ27
);ua&N{`8Nƍ>hLG݄n,T
jEau>fַҊ2Eau6M+(A
0iTy{ `!ALl8S-,4$2ޛ~RY4}VkAV(+dtx2{>vd 53d^B~ϳ=<):9d=ilaG\[ruﱻe=hv+JGQ}kpUjlf]A
.]]4.mWIe[#E2@>Y!'>1wu3si 83`<`7sr$rL`8Iz9`ruʺ'r"Pm.՛5Q^E%qE(96v_5lrjTee]o\Ft
biYq&}j;&/McץSjMZ*)K,w\mE/G-G@ן'-41/SV+|`jV~$1臟ى*ӕu>8cWٌr$NT{-k
-YzWwwNµcF%DC߉ߝŽ Pg>'S|gwXz̯h2ҥ\.)7*W!MmEZx