You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

165 lines
8.3 KiB
HTML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html lang="en">
<head>
<title>Dustin Swan - Resume</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- <script src="https://unpkg.com/alpinejs@3.x.x/dist/cdn.min.js" defer></script> -->
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://kit.fontawesome.com/024d65f707.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/daisyui@2.41.0/dist/full.css" type="text/css" />
<link rel="stylesheet" href="https://code.cdn.mozilla.net/fonts/fira.css">
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>🦢</text></svg>">
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Iosevka/6.0.0/iosevka/iosevka.min.css"> -->
<style type="text/tailwindcss">
@font-face {
font-family: "Iosevka Web";
src: url("assets/iosevka-fixed-regular.woff2") format("woff2");
}
body {
font-family: "Fira Sans", sans-serif;
}
@layer base {
.section-title {
@apply uppercase font-semibold text-lg border-b-2 mb-4;
font-family: "Iosevka Web";
}
.subtitle {
@apply uppercase font-bold text-sm my-1;
font-family: "Iosevka Web";
}
.sidebar a {
@apply text-cyan-400 hover:text-cyan-200 transition-colors;
}
.main a {
@apply text-cyan-700 hover:text-cyan-500 transition-colors dark:text-cyan-200 dark:hover:text-cyan-300;
}
.sidebar ul {
@apply mb-6;
}
.sidebar li {
@apply mb-2;
font-family: "Iosevka Web";
}
.main li {
list-style-type: " ";
@apply mb-1;
}
span[data-tip] {
@apply border-b border-dashed cursor-pointer;
}
}
</style>
</head>
<body class="bg-slate-300 dark:bg-slate-900 h-full">
<div class="h-full lg:container lg:mx-auto lg:flex min-h-screen shadow-xl">
<section class="main p-8 lg:px-12 lg:py-9 bg-slate-100 dark:bg-slate-700 dark:text-slate-200">
<h1 class="text-4xl mb-4 uppercase font-semibold border-b-2 py-2">Dustin Swan</h1>
<article class="pb-8">
<p class="py-1"><strong>Software Engineer</strong> with over 12 years experience architecting, implementing, and shipping secure, cross-platform applications. Proficient in functional and object-oriented programming paradigms; delivering clean, maintainable code; utilizing modern, standards-based web technologies.
</article>
<h3 class="section-title">Experience</h3>
<article class="pb-8">
<img src="assets/visionable.png" class="w-12 float-left mt-1 mr-4" />
<h4 class="text-lg font-bold">Front End &amp; API Lead Software Engineer</h4>
<div><a href="https://www.visionable.com" target="_blank">Visionable UK Ltd</a> <i>(prev. IOCOM)</i> | 2009 - present</div>
<ul class="clear-left m-4 ml-0 lg:ml-16">
<li>Designed &amp; developed our flagship responsive, cross-platform JavaScript video conferencing application</li>
<li>Architected, developed &amp; documented our original RESTful APIs</li>
<li>Lead a team of 7 front- &amp; back-end developers, creating an AWS SaaS API platform and a React + NextJS web application</li>
<li>Worked closely with Product &amp; Design teams to quickly turn ideas into functional prototypes</li>
</ul>
</article>
<article class="pb-8">
<img src="assets/abbott.png" class="w-12 float-left mr-4" />
<h4 class="text-lg font-bold">Validation Engineer</h4>
<div><a href="https://www.abbott.com/" target="_blank">Abbott Laboratories</a> | 2007 - 2009</div>
<ul class="clear-left m-4 ml-0 lg:ml-16">
<li>Managed projects and assembled cross-functional teams to construct change plans and assess product impact</li>
<li>Authored changes to testing documentation and product design records</li>
<li>Processed changes to quality system and product documents to comply with medical device regulatory requirements</li>
<li>Programmed automated testing control procedures using the Laboratory Information Management System (LIMS)</li>
</ul>
</article>
<h3 class="section-title">Education</h3>
<article class="pb-8">
<img src="assets/uic.png" class="w-12 float-left mt-2 mr-4" />
<h4 class="text-lg font-bold">Bachelor of Science in Bioengineering</h4>
<i>with minors in Computer Science & Math</i>
<div><a href="https://www.uic.edu/" target="_blank">University of Illinois Chicago (UIC)</a> | 2007</div>
</article>
</section>
<section class="sidebar p-8 mb-8 lg:mb-0 lg:pt-16 lg:p-12 bg-slate-800 text-slate-100 lg:w-96 shrink-0 lg:order-first">
<h3 class="section-title">Contact</h3>
<ul>
<li>
<i class="mr-1 fa-solid fa-fw fa-envelope"></i>
<a href="mailto:dustin@dustinswan.com">dustin@dustinswan.com</a>
</li>
<li>
<i class="mr-1 fa-solid fa-fw fa-map"></i>
Upstate NY, USA
</li>
<li>
<i class="mr-1 fa-solid fa-fw fa-house"></i>
<a href="https://www.dustinswan.com" target="_blank">dustinswan.com</a>
</li>
<li>
<i class="mr-1 fa-solid fa-fw fa-ellipsis"></i>
<a title="git" class="mr-1" href="https://git.dustinswan.com" target="_blank"><i class="mr-1 fa-brands fa-fw fa-git"></i></a>
<a title="LinkedIn" class="mr-1" href="https://www.linkedin.com/in/dustinswan" target="_blank"><i class="mr-1 fa-brands fa-fw fa-linkedin"></i></a>
<a title="Twitter" class="mr-1" href="https://twitter.com/dustinswan" target="_blank"><i class="mr-1 fa-brands fa-fw fa-twitter"></i></a>
<a title="Mastodon" class="mr-1" href="https://mastodon.social/@dustinswan" target="_blank"><i class="mr-1 fa-brands fa-fw fa-mastodon"></i></a>
<a title="PGP" class="mr-1" href="https://pgp.mit.edu/pks/lookup?op=get&search=0xAB49BD6B2B3A6377" target="_blank"><i class="mr-1 fa-solid fa-fw fa-lock"></i></a>
</li>
</ul>
<h3 class="section-title">Technologies</h3>
<h4 class="subtitle text-fuchsia-400">Expert in</h4>
<ul class="text-fuchsia-100">
<li><span class="tooltip tooltip-accent" data-tip="I started writing JavaScript in ~2008, and have recently (thankfully) made the switch to TypeScript. It's been a long journey! Gone are the days of manually futzing with the Prototype chain..">JavaScript</span> / NodeJS / HTML / <span class="tooltip tooltip-accent" data-tip="I ♡ CSS. Flexbox has increased my quality of life in a big way. I've also used a few preprocessors like Sass & Less, and I tried out Tailwind for the first time on this page - I think I like it!">CSS</a></li>
<li><span class="tooltip tooltip-accent" data-tip="I built our video conferencing web application using WebRTC. For the first few years it was a constant battle with Browsers changing their APIs every version, but that has mostly settled down. Safari is still awful, of course.">WebRTC</span> / WebSockets / REST / AJAX</li>
<li>React / Preact / MobX / MUI</li>
</ul>
<h4 class="subtitle text-emerald-400">Skilled in</h4>
<ul class="text-emerald-100">
<li>TypeScript / Deno / Electron / AWS</li>
<li>NextJS / Redux / RxJS / Zustand</li>
<li>PHP / ODBC / Postgres / SQLite</li>
<li>Git / Perforce / Jira / Bugzilla</li>
</ul>
<h4 class="subtitle text-amber-200">Excited About</h4>
<ul class="text-amber-50">
<li>Haskell / PureScript / Elm / Unison</li>
<li><span class="tooltip tooltip-accent" data-tip="I did Advent of Code 2020 in OCaml (see my Git repo), and it was pretty great.">OCaml</span> / <span class="tooltip tooltip-accent" data-tip="Then I did AoC 2021 in Racket. I didn't find it as easy as OCaml. I think I just need more practice with Lisp">Racket</span> / <span class="tooltip tooltip-accent" data-tip="Currently learning Rust. I'll be doing this year's AoC in it. Wish me luck!">Rust</span> / Wasm</li>
<li><span class="tooltip tooltip-accent" data-tip="Huge fan of Nix. I've replaced Homebrew on MacOS with Nix, I run NixOS on my VMs, and I use home-manager to manage my dotfiles. So good!">NixOS</span> / <span class="tooltip tooltip-accent" data-tip="I've been using vi since I was a teenager. I used Emacs for a few years (mostly for Org-mode), but came back to vi when Neovim started getting good.">Neovim</span> / Command Line ♡</li>
</ul>
</section>
</div>
</body>
</html>