Mercurial
comparison mrjunejune/test/snapshots/resume.snapshot @ 94:092afa595764
[MrJuneJune] Added Integration tests.
| author | June Park <parkjune1995@gmail.com> |
|---|---|
| date | Fri, 02 Jan 2026 18:13:32 -0800 |
| parents | |
| children | 1c446ab6f945 |
comparison
equal
deleted
inserted
replaced
| 93:be91a73d801a | 94:092afa595764 |
|---|---|
| 1 HTTP/1.1 200 OK | |
| 2 Content-Type: text/html | |
| 3 Content-Length: 15108 | |
| 4 Connection: close | |
| 5 | |
| 6 <!doctype html> | |
| 7 <html lang="en"> | |
| 8 <head> | |
| 9 <link rel="icon" type="image/svg+xml" href="/public/epi_all_colors.svg"> | |
| 10 | |
| 11 <link rel="preload" href="/public/fonts/Roboto-Regular.ttf" as="font" crossorigin> | |
| 12 <link rel="preload" href="/public/fonts/Roboto-Thin.ttf"as="font" crossorigin> | |
| 13 | |
| 14 <link rel="preload" href="/public/fonts/atkinson-regular.woff" as="font" type="font/woff" crossorigin> | |
| 15 <link rel="preload" href="/public/fonts/atkinson-bold.woff" as="font" type="font/woff" crossorigin> | |
| 16 | |
| 17 <link rel="preload" href="/public/fonts/more-sugar.extras.otf" as="font" type="font/otf" crossorigin> | |
| 18 <link rel="preload" href="/public/fonts/more-sugar.regular.otf" as="font" type="font/otf" crossorigin> | |
| 19 <link rel="preload" href="/public/fonts/more-sugar.thin.otf" as="font" type="font/otf" crossorigin> | |
| 20 | |
| 21 <link rel="preload" href="/base.css" as="style" /> | |
| 22 <link rel="stylesheet" href="/base.css" /> | |
| 23 | |
| 24 | |
| 25 <link rel="preload" href="resume.css" as="style" /> | |
| 26 <link rel="stylesheet" href="resume.css" /> | |
| 27 </head> | |
| 28 <body> | |
| 29 <style> | |
| 30 :root { | |
| 31 --header-background: var(--white); | |
| 32 --header-color: rgb(var(--black)); | |
| 33 --link-hover-accent: var(--awesome); | |
| 34 } | |
| 35 | |
| 36 /* Fixed icon in top left corner */ | |
| 37 #themeToggle { | |
| 38 position: fixed; | |
| 39 top: 20px; | |
| 40 left: 20px; | |
| 41 background: var(--header-background); | |
| 42 display: flex; | |
| 43 align-items: center; | |
| 44 border-radius: 50%; | |
| 45 cursor: pointer; | |
| 46 z-index: 1000; | |
| 47 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); | |
| 48 transition: transform 0.2s ease; | |
| 49 } | |
| 50 | |
| 51 #themeToggle:hover { | |
| 52 transform: scale(1.05); | |
| 53 } | |
| 54 | |
| 55 /* Professional header */ | |
| 56 header { | |
| 57 margin: auto; | |
| 58 padding: 1.5em 1em; | |
| 59 font-family: "More", sans-serif; | |
| 60 box-shadow: 0 2px 8px rgba(var(--black), 5%); | |
| 61 width: 720px; | |
| 62 max-width: calc(100% - 2em); | |
| 63 text-align: center; | |
| 64 } | |
| 65 | |
| 66 header h1 { | |
| 67 margin: 0; | |
| 68 font-size: 1.8em; | |
| 69 font-weight: 700; | |
| 70 letter-spacing: -0.5px; | |
| 71 } | |
| 72 | |
| 73 header h1 a { | |
| 74 text-decoration: none; | |
| 75 color: var(--header-color); | |
| 76 } | |
| 77 | |
| 78 header h1 a::before { | |
| 79 display: none; | |
| 80 } | |
| 81 | |
| 82 /* Mobile responsiveness */ | |
| 83 @media (max-width: 720px) { | |
| 84 #themeToggle { | |
| 85 top: 15px; | |
| 86 left: 15px; | |
| 87 } | |
| 88 | |
| 89 header { | |
| 90 padding: 1em; | |
| 91 } | |
| 92 | |
| 93 header h1 { | |
| 94 font-size: 1.5em; | |
| 95 } | |
| 96 } | |
| 97 | |
| 98 @media (max-width: 480px) { | |
| 99 #themeToggle { | |
| 100 top: 10px; | |
| 101 left: 10px; | |
| 102 } | |
| 103 | |
| 104 #themeToggle img { | |
| 105 height: 40px; | |
| 106 width: 40px; | |
| 107 } | |
| 108 | |
| 109 header h1 { | |
| 110 font-size: 1.3em; | |
| 111 } | |
| 112 } | |
| 113 | |
| 114 #logo { | |
| 115 width: 300px; | |
| 116 } | |
| 117 | |
| 118 /* 1. DEFINE THE DEFAULTS (Light Mode) */ | |
| 119 :root { | |
| 120 --logo-invert: invert(0); | |
| 121 --epi-grayscale: grayscale(0) brightness(1); | |
| 122 } | |
| 123 | |
| 124 /* 2. MANUAL DARK OVERRIDE */ | |
| 125 html.dark { | |
| 126 --logo-invert: invert(1); | |
| 127 --epi-grayscale: grayscale(1); | |
| 128 } | |
| 129 | |
| 130 /* 3. MANUAL LIGHT OVERRIDE */ | |
| 131 html.light-mode { | |
| 132 --logo-invert: invert(0); | |
| 133 --epi-grayscale: brightness(2.9) grayscale(1); | |
| 134 } | |
| 135 | |
| 136 /* 4. SYSTEM PREFERENCE */ | |
| 137 @media (prefers-color-scheme: dark) { | |
| 138 :root:not(.light-mode) { | |
| 139 --logo-invert: invert(1); | |
| 140 } | |
| 141 } | |
| 142 | |
| 143 /* 5. APPLY TO ELEMENTS */ | |
| 144 #logo { | |
| 145 -webkit-filter: var(--logo-invert); | |
| 146 filter: var(--logo-invert); | |
| 147 transition: filter 0.3s ease; | |
| 148 } | |
| 149 | |
| 150 .epi-logo { | |
| 151 -webkit-filter: var(--epi-grayscale); | |
| 152 filter: var(--epi-grayscale); | |
| 153 transition: filter 0.3s ease; | |
| 154 } | |
| 155 </style> | |
| 156 | |
| 157 <div id="themeToggle"> | |
| 158 <img id="epiChan" class="epi-logo" aria-label="Toggle dark mode" src="/public/epi_all_colors.svg" height="50" width="50"> | |
| 159 </div> | |
| 160 | |
| 161 <header> | |
| 162 <h1><a href="/">MrJuneJune</a></h1> | |
| 163 </header> | |
| 164 <script src="/index.js"></script> | |
| 165 | |
| 166 | |
| 167 <main> | |
| 168 <div class="info"> | |
| 169 <a href="/public/resume.pdf">Download PDF</a> | |
| 170 <hr> | |
| 171 <p><span class="header-firstname-style"> JUNTAE </span><span class="header-lastname-style">PARK</span><p> | |
| 172 <p class="header-position-style"> SOFTWARE ENGINEER </p> | |
| 173 <div class="header-address-style"> | |
| 174 Bay Area, CA, USA | |
| 175 </div> | |
| 176 <div class="header-social-style"> | |
| 177 <p> <a href="tel:+016505311728">(US) 650-531-1728</a> | <a href="tel:+014375808026">(CA) 437-580-8026</a> | <a href="mailto:[email protected]"> [email protected] </a>| <a href="https://github.com/mrjunejune"> | |
| 178 <svg viewBox="0 0 16 16" aria-hidden="true" width="12" height="12"> | |
| 179 <path | |
| 180 fill="currentColor" | |
| 181 d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z" | |
| 182 ></path> | |
| 183 </svg> mrjunejune | |
| 184 </a>| <a href="https://www.linkedin.com/in/junepark"> | |
| 185 <svg width="12" height="12" fill="currentColor" class="bi bi-linkedin" viewBox="0 0 16 16"> | |
| 186 <path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854zm4.943 12.248V6.169H2.542v7.225zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248S2.4 3.226 2.4 3.934c0 .694.521 1.248 1.327 1.248zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016l.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225z"/> | |
| 187 </svg> | |
| 188 junepark | |
| 189 </a> | |
| 190 </p> | |
| 191 </div> | |
| 192 </div> | |
| 193 | |
| 194 <div class="sub-header"> | |
| 195 <h2 class="section-style"> Summary </h2> | |
| 196 <div class="line"></div> | |
| 197 </div> | |
| 198 <p class="paragraph-style">Software Engineer with 9 years of hands-on experience across diverse tech stacks, from early-stage startups to FANG-scale systems. Adept in designing and delivering robust software solutions using modern languages, frameworks, and cloud platforms. <br><br> Open to impactful work.</p> | |
| 199 <div class="sub-header"> | |
| 200 | |
| 201 <h2 class="section-style"> Skills </h2> | |
| 202 <div class="line"></div> | |
| 203 </div> | |
| 204 <div class="paragraph-style"> | |
| 205 <p> | |
| 206 <span class="entry-title-style"> Programming Languages:</span> | |
| 207 <span class="skill-type-style"> TypeScript, Python, C/C++, Ruby, Java, MATLAB </span> | |
| 208 </p> | |
| 209 <p> | |
| 210 <span class="entry-title-style">Tools & Platforms:</span> | |
| 211 <span class="skill-type-style">Bazel, PostgresSQL, Mercurial, Git, Pands, Raylib, XCode</span> | |
| 212 </p> | |
| 213 <p> | |
| 214 <span class="entry-title-style"> Web Frameworks: </span> | |
| 215 <span class="skill-type-style"> Django, Rails, React, Flask</span> | |
| 216 </p> | |
| 217 <p> | |
| 218 <span class="entry-title-style"> DevOp:</span> | |
| 219 <span class="skill-type-style"> Plummi, Heroku, DigitalOcean, AWS, Google Cloud </span> | |
| 220 </p> | |
| 221 <p> | |
| 222 <span class="entry-title-style"> Language:</span> | |
| 223 <span class="skill-type-style"> English, Korean, Japanese </span> | |
| 224 </p> | |
| 225 </div> | |
| 226 | |
| 227 <!-- Experiences --> | |
| 228 <div class="sub-header"> | |
| 229 <h2 class="section-style"> Experience </h2> | |
| 230 <div class="line"></div> | |
| 231 </div> | |
| 232 <div class="flex-box"> | |
| 233 <p class="entry-title-style"> | |
| 234 <a href="https://www.meta.com/">Meta</a> | |
| 235 </p> | |
| 236 <p class="entry-location-style">San Francisco, CA, USA</p> | |
| 237 </div> | |
| 238 <div class="flex-box"> | |
| 239 <p class="entry-position-style">SOFTWARE ENGINEER</p> | |
| 240 <p class="entry-date-style">Oct, 2024 - Present</p> | |
| 241 </div> | |
| 242 <ul class="description-style"> | |
| 243 <li> | |
| 244 Took initiative on Channel Value Rule, targeting the 16% of ad traffic with both app and web destinations to improve value attribution and ROI. | |
| 245 </li> | |
| 246 <li> | |
| 247 Built full-stack features using React and Hack/GraphQL, contributing to scalable, production-ready systems. | |
| 248 </li> | |
| 249 <li> | |
| 250 Partnered with data science to design A/B tests and analyze revenue impact of ads destination. | |
| 251 </li> | |
| 252 <li> | |
| 253 Proposed and implemented alpha improvements to internal testing infrastructure, reducing test time by 50% and enhancing developer velocity. | |
| 254 </li> | |
| 255 </ul> | |
| 256 <div class="flex-box"> | |
| 257 <p class="entry-title-style"> | |
| 258 <a href="https://www.wmg.com/">Warner Music Group</a> | |
| 259 </p> | |
| 260 <p class="entry-location-style">Toronto, ON, Canada</p> | |
| 261 </div> | |
| 262 <div class="flex-box"> | |
| 263 <p class="entry-position-style">TECHNICAL LEAD ENGINEER</p> | |
| 264 <p class="entry-date-style">July, 2023 - Sept, 2024</p> | |
| 265 </div> | |
| 266 <ul class="description-style"> | |
| 267 <li> | |
| 268 Implements <a href="https://bazel.build/">bazel </a>structure for the company for TypeScript and JavaScript code base for hermiticity and stablishing standards for JavaScript and | |
| 269 </li> | |
| 270 <li> | |
| 271 TypeScript testing and code structures. | |
| 272 </li> | |
| 273 <li> | |
| 274 Led a team of five engineers in building GraphQL endpoints for client-facing applications using Apollo and AppSync, supporting over 2000 RPS and auto scaling depending on request values. | |
| 275 </li> | |
| 276 <li> | |
| 277 Improved application response times by up to 85% for graphQL response by updating database schema and SQL queries, eliminating N+1 queries and lack of indexes. | |
| 278 </li> | |
| 279 <li> | |
| 280 Developed CI/CD pipelines for backend structures. | |
| 281 </li> | |
| 282 <li> | |
| 283 Designed infrastructure for pub/sub, caching, and media processing logic. | |
| 284 </li> | |
| 285 </ul> | |
| 286 | |
| 287 <div class="flex-box"> | |
| 288 <p class="entry-title-style"> | |
| 289 <a href="https://www.google.com/">Google</a> | |
| 290 </p> | |
| 291 <p class="entry-location-style">Toronto, ON, Canada</p> | |
| 292 </div> | |
| 293 <div class="flex-box"> | |
| 294 <p class="entry-position-style">SOFTWARE ENGINEER</p> | |
| 295 <p class="entry-date-style">Feb, 2022 - July 2023</p> | |
| 296 </div> | |
| 297 <ul class="description-style"> | |
| 298 <li> | |
| 299 Implements and maintained new features relating to App Script across google workspace platform including Gmail, sheets, and Docs.</li> | |
| 300 <li> | |
| 301 Improved a response time and render time of App Script hover card components.</li> | |
| 302 <li> | |
| 303 Collaborated with a team of developers to ensure timely and accurate delivery of features.</li> | |
| 304 <li> | |
| 305 Conducted user testing and gathered feedback to iterate on features for optimal user experience.</li> | |
| 306 </ul> | |
| 307 | |
| 308 <div class="flex-box"> | |
| 309 <p class="entry-title-style"> | |
| 310 <a href="https://www.everlywell.com/">Everlywell</a> | |
| 311 </p> | |
| 312 <p class="entry-location-style">Toronto, ON, Canada</p> | |
| 313 </div> | |
| 314 <div class="flex-box"> | |
| 315 <p class="entry-position-style">SOFTWARE ENGINEER</p> | |
| 316 <p class="entry-date-style">December, 2020 - Jan, 2022</p> | |
| 317 </div> | |
| 318 <ul class="description-style"> | |
| 319 <li> | |
| 320 Maintained Amazon amplify apps to create and deploy React web applications for companies such as <a href="https://brooklynnets.everlywell.com/">NBA</a>, <a href="https://tinder.everlywell.com/">Tinder</a>, and other companies for COVID-19 at-home test kits.</li> | |
| 321 <li> | |
| 322 Implemented a script that helps accurately access and refund unused covid test kits; helping company save up to 200,000 USD.</li> | |
| 323 <li> | |
| 324 Created several Rails controllers for internal purposes; mocking end to end user experience for QA, mass refund features for CX department, and more, ultimately reducing support tickets amount by 50 percent.</li> | |
| 325 <li> | |
| 326 Implemented an audit table to help debug problems and logged which process was responsible for the change of the record using PaperTrail gems</li> | |
| 327 </ul> | |
| 328 | |
| 329 <div class="flex-box"> | |
| 330 <p class="entry-title-style"> | |
| 331 <a href="https://www.spiria.com/">Spiria</a> | |
| 332 </p> | |
| 333 <p class="entry-location-style">Oakville, ON, Canada</p> | |
| 334 </div> | |
| 335 <div class="flex-box"> | |
| 336 <p class="entry-position-style">SOFTWARE ENGINEER</p> | |
| 337 <p class="entry-date-style">October, 2018 - October, 2020</p> | |
| 338 </div> | |
| 339 <ul class="description-style"> | |
| 340 <li> | |
| 341 Constructed RESTful API endpoints in multiple different frameworks such as Django, Ruby on Rails, and Flask and automated API documentation process using swagger. | |
| 342 </li> | |
| 343 <li> | |
| 344 Designed custom rake tasks for importing production data into newly updated data structure to meet client's needs. | |
| 345 </li> | |
| 346 <li> | |
| 347 Maintained or updated staging/productions servers. Debugged problems in production postgres database using ssh and postgres console on Heroku or AWS servers | |
| 348 </li> | |
| 349 <li> | |
| 350 Collaborated in creating automation python scripts for websites and application using selenium covering for QA eliminating 80% of QA's manual work | |
| 351 </li> | |
| 352 </ul> | |
| 353 | |
| 354 <div class="flex-box"> | |
| 355 <p class="entry-title-style"> | |
| 356 <a href="https://www.apexscore.ai/">Apex Score</a> | |
| 357 </p> | |
| 358 <p class="entry-location-style">Oakville, ON, Canada</p> | |
| 359 </div> | |
| 360 <div class="flex-box"> | |
| 361 <p class="entry-position-style">SOFTWARE ENGINEER</p> | |
| 362 <p class="entry-date-style">September, 2019 - October, 2020</p> | |
| 363 </div> | |
| 364 <ul class="description-style"> | |
| 365 <li> | |
| 366 Developed custom Shapley value regression model to calculate importance of independent variables of data sets using sklearn, pandas, and numpy. | |
| 367 </li> | |
| 368 <li> | |
| 369 Created custom image uploader to Amazon s3 bucket using boto3 library. | |
| 370 </li> | |
| 371 <li> | |
| 372 Built RESTful API application using Flask framework and automated extensive API documentation pages using flask-restplus, pytest, and swagger, covering 95% of the code base. | |
| 373 </li> | |
| 374 <li> | |
| 375 Created an interactive graph using D3.js in Vue.js with data from Flask backend API. | |
| 376 </li> | |
| 377 </ul> | |
| 378 | |
| 379 <div class="sub-header"> | |
| 380 <h2 class="section-style"> Education </h2> | |
| 381 <div class="line"></div> | |
| 382 </div> | |
| 383 <div class="flex-box"> | |
| 384 <p class="entry-title-style"> | |
| 385 University of British Columbia | |
| 386 </p> | |
| 387 <p class="entry-location-style">Kelowna, British Columbia</p> | |
| 388 </div> | |
| 389 <div class="flex-box"> | |
| 390 <p class="entry-position-style">BACHELOR OF SCIENCE IN PHYSICS</p> | |
| 391 <p class="entry-date-style">2014 - 2018</p> | |
| 392 </div> | |
| 393 <div id="footer"></div> | |
| 394 </main> | |
| 395 <div style="display: flex; align-items: center; justify-content: center; margin: 30px 0px;"> | |
| 396 <small>© 2026 June Park</small> | |
| 397 </div> | |
| 398 | |
| 399 <script href="index.js"></script> | |
| 400 </body> | |
| 401 </html> |