522 lines
17 KiB
HTML
522 lines
17 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Eric Steen - Resume</title>
|
|
<style>
|
|
:root {
|
|
--deep-navy: #0A1128;
|
|
--rich-gold: #D4AF37;
|
|
--warm-gold: #F4E5C2;
|
|
--cream: #FFF8E7;
|
|
--charcoal: #2C2C2C;
|
|
--silver: #C0C0C0;
|
|
--burgundy: #7C2D37;
|
|
}
|
|
|
|
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
body {
|
|
font-family: 'Garamond', 'Georgia', serif;
|
|
line-height: 1.6;
|
|
color: var(--charcoal);
|
|
background: var(--deep-navy);
|
|
background-attachment: fixed;
|
|
background-image:
|
|
linear-gradient(135deg, var(--deep-navy) 0%, #16213e 100%),
|
|
repeating-linear-gradient(
|
|
0deg,
|
|
transparent,
|
|
transparent 40px,
|
|
rgba(212, 175, 55, 0.03) 40px,
|
|
rgba(212, 175, 55, 0.03) 80px
|
|
),
|
|
repeating-linear-gradient(
|
|
90deg,
|
|
transparent,
|
|
transparent 40px,
|
|
rgba(212, 175, 55, 0.02) 40px,
|
|
rgba(212, 175, 55, 0.02) 80px
|
|
),
|
|
repeating-linear-gradient(
|
|
45deg,
|
|
transparent,
|
|
transparent 60px,
|
|
rgba(212, 175, 55, 0.015) 60px,
|
|
rgba(212, 175, 55, 0.015) 120px
|
|
);
|
|
min-height: 100vh;
|
|
padding: 20px;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
/* Art Deco geometric background pattern */
|
|
body::before {
|
|
content: '';
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
background-image:
|
|
repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(212, 175, 55, 0.03) 35px, rgba(212, 175, 55, 0.03) 70px),
|
|
repeating-linear-gradient(-45deg, transparent, transparent 35px, rgba(212, 175, 55, 0.03) 35px, rgba(212, 175, 55, 0.03) 70px);
|
|
z-index: -1;
|
|
}
|
|
|
|
.border-wrapper {
|
|
position: relative;
|
|
width: fit-content;
|
|
}
|
|
|
|
.corner-circle {
|
|
position: absolute;
|
|
width: 60px;
|
|
height: 60px;
|
|
background-color: var(--rich-gold);
|
|
border-radius: 50%;
|
|
z-index: 100;
|
|
}
|
|
|
|
.corner-circle::after {
|
|
content: '';
|
|
position: absolute;
|
|
width: 60px;
|
|
height: 60px;
|
|
background: var(--deep-navy);
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.top-left {
|
|
top: -14px;
|
|
left: -14px;
|
|
}
|
|
|
|
.top-left::after {
|
|
top: -10px;
|
|
left: -10px;
|
|
}
|
|
|
|
.top-right {
|
|
top: -14px;
|
|
right: -14px;
|
|
}
|
|
|
|
.top-right::after {
|
|
top: -10px;
|
|
right: -10px;
|
|
}
|
|
|
|
.bottom-left {
|
|
bottom: -14px;
|
|
left: -14px;
|
|
}
|
|
|
|
.bottom-left::after {
|
|
bottom: -10px;
|
|
left: -10px;
|
|
}
|
|
|
|
.bottom-right {
|
|
bottom: -14px;
|
|
right: -14px;
|
|
}
|
|
|
|
.bottom-right::after {
|
|
bottom: -10px;
|
|
right: -10px;
|
|
}
|
|
|
|
.container {
|
|
max-width: 800px;
|
|
background: var(--cream);
|
|
border-radius: 0;
|
|
border: 8px solid var(--rich-gold);
|
|
box-shadow: 0 20px 60px rgba(0,0,0,0.4);
|
|
overflow: visible;
|
|
position: relative;
|
|
}
|
|
|
|
.inner-border {
|
|
position: absolute;
|
|
top: 8px;
|
|
left: 8px;
|
|
right: 8px;
|
|
bottom: 8px;
|
|
border: 8px solid var(--rich-gold);
|
|
pointer-events: none;
|
|
}
|
|
|
|
/* Geometric pattern accent */
|
|
.container::before {
|
|
content: '';
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
height: 3px;
|
|
background: repeating-linear-gradient(
|
|
90deg,
|
|
var(--rich-gold) 0px,
|
|
var(--rich-gold) 2px,
|
|
var(--deep-navy) 2px,
|
|
var(--deep-navy) 4px
|
|
);
|
|
z-index: 50;
|
|
}
|
|
|
|
.header {
|
|
background: linear-gradient(135deg, var(--deep-navy) 0%, #0f2540 100%);
|
|
color: var(--cream);
|
|
padding: 50px 40px;
|
|
text-align: center;
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
/* Art deco diagonal stripe pattern in header */
|
|
.header::before {
|
|
content: '';
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
background-image:
|
|
repeating-linear-gradient(
|
|
45deg,
|
|
transparent,
|
|
transparent 35px,
|
|
rgba(212, 175, 55, 0.03) 35px,
|
|
rgba(212, 175, 55, 0.03) 70px
|
|
);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.header-content {
|
|
position: relative;
|
|
z-index: 2;
|
|
}
|
|
|
|
.header h1 {
|
|
font-size: 3em;
|
|
margin-bottom: 5px;
|
|
font-weight: 400;
|
|
letter-spacing: 3px;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.header .title {
|
|
font-size: 1em;
|
|
opacity: 0.95;
|
|
margin-bottom: 25px;
|
|
letter-spacing: 2px;
|
|
text-transform: uppercase;
|
|
font-weight: 300;
|
|
}
|
|
|
|
.title-divider {
|
|
width: 60px;
|
|
height: 2px;
|
|
background: var(--rich-gold);
|
|
margin: 15px auto;
|
|
}
|
|
|
|
.contact-info {
|
|
display: flex;
|
|
justify-content: center;
|
|
gap: 30px;
|
|
flex-wrap: wrap;
|
|
font-size: 0.95em;
|
|
letter-spacing: 1px;
|
|
}
|
|
|
|
.contact-info span {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.content {
|
|
padding: 50px 40px;
|
|
background: var(--cream);
|
|
}
|
|
|
|
.section {
|
|
margin-bottom: 45px;
|
|
}
|
|
|
|
.section h2 {
|
|
color: var(--deep-navy);
|
|
font-size: 1.3em;
|
|
margin-bottom: 5px;
|
|
letter-spacing: 2px;
|
|
text-transform: uppercase;
|
|
font-weight: 400;
|
|
}
|
|
|
|
.section h2::before {
|
|
content: '◆ ';
|
|
color: var(--rich-gold);
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.section-divider {
|
|
width: 80px;
|
|
height: 2px;
|
|
background: linear-gradient(90deg, var(--rich-gold) 0%, var(--deep-navy) 100%);
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.experience-item, .education-item {
|
|
margin-bottom: 30px;
|
|
padding-left: 25px;
|
|
border-left: 3px solid var(--rich-gold);
|
|
position: relative;
|
|
}
|
|
|
|
.experience-item::before {
|
|
content: '▸';
|
|
position: absolute;
|
|
left: -13px;
|
|
color: var(--rich-gold);
|
|
font-size: 0.8em;
|
|
}
|
|
|
|
.experience-item h3, .education-item h3 {
|
|
color: var(--deep-navy);
|
|
margin-bottom: 3px;
|
|
font-size: 1.1em;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.job-meta, .edu-meta {
|
|
color: #666;
|
|
font-style: italic;
|
|
margin-bottom: 12px;
|
|
font-size: 0.95em;
|
|
}
|
|
|
|
.experience-item ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
}
|
|
|
|
.experience-item li {
|
|
margin-bottom: 8px;
|
|
padding-left: 15px;
|
|
position: relative;
|
|
}
|
|
|
|
.experience-item li::before {
|
|
content: '▪';
|
|
position: absolute;
|
|
left: 0;
|
|
color: var(--rich-gold);
|
|
}
|
|
|
|
.skills {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 12px;
|
|
}
|
|
|
|
.skill-tag {
|
|
background: linear-gradient(135deg, var(--deep-navy) 0%, #0f2540 100%);
|
|
color: var(--rich-gold);
|
|
padding: 8px 18px;
|
|
border: 1px solid var(--rich-gold);
|
|
border-radius: 0;
|
|
font-size: 0.9em;
|
|
letter-spacing: 1px;
|
|
text-transform: uppercase;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.summary {
|
|
background: rgba(10, 17, 40, 0.05);
|
|
padding: 25px 20px;
|
|
border-left: 4px solid var(--rich-gold);
|
|
border-right: 2px solid var(--rich-gold);
|
|
position: relative;
|
|
}
|
|
|
|
.summary::before {
|
|
content: '◆';
|
|
position: absolute;
|
|
top: -12px;
|
|
left: 20px;
|
|
color: var(--rich-gold);
|
|
font-size: 1.2em;
|
|
}
|
|
|
|
.summary p {
|
|
color: var(--charcoal);
|
|
line-height: 1.8;
|
|
}
|
|
|
|
@media (max-width: 600px) {
|
|
.header {
|
|
padding: 40px 20px;
|
|
}
|
|
|
|
.header h1 {
|
|
font-size: 2.2em;
|
|
}
|
|
|
|
.content {
|
|
padding: 30px 20px;
|
|
}
|
|
|
|
.contact-info {
|
|
flex-direction: column;
|
|
align-items: center;
|
|
gap: 15px;
|
|
}
|
|
|
|
.corner-circle {
|
|
width: 40px;
|
|
height: 40px;
|
|
}
|
|
|
|
.corner-circle::after {
|
|
width: 40px;
|
|
height: 40px;
|
|
}
|
|
|
|
.top-left, .top-right {
|
|
top: -10px;
|
|
}
|
|
|
|
.bottom-left, .bottom-right {
|
|
bottom: -10px;
|
|
}
|
|
|
|
.top-left, .bottom-left {
|
|
left: -10px;
|
|
}
|
|
|
|
.top-right, .bottom-right {
|
|
right: -10px;
|
|
}
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="border-wrapper">
|
|
<div class="corner-circle top-left"></div>
|
|
<div class="corner-circle top-right"></div>
|
|
<div class="corner-circle bottom-left"></div>
|
|
<div class="corner-circle bottom-right"></div>
|
|
|
|
<div class="container">
|
|
<div class="inner-border"></div>
|
|
<header class="header">
|
|
<div class="header-content">
|
|
<h1>Eric Steen</h1>
|
|
<div class="title-divider"></div>
|
|
<div class="title">Hardware & Firmware Engineer</div>
|
|
<div class="contact-info">
|
|
<span>📧 eric@steen.run</span>
|
|
<span>🌐 Grand Forks, ND</span>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
<main class="content">
|
|
<section class="section">
|
|
<h2>Professional Summary</h2>
|
|
<div class="section-divider"></div>
|
|
<div class="summary">
|
|
<p>Versatile engineer with hands-on experience spanning embedded firmware, hardware diagnostics, and infrastructure automation. Professional background includes PIC microcontroller programming, I2C system integration, and circuit-level repair, plus recent work building CI/CD pipelines, telemetry systems (Grafana/Prometheus), and automated testing frameworks. Brings a full-stack perspective to system design—understanding both the hardware constraints and the operational requirements that make products successful in production.</p>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="section">
|
|
<h2>Experience</h2>
|
|
<div class="section-divider"></div>
|
|
|
|
<div class="experience-item">
|
|
<h3>Lead Repair Technician</h3>
|
|
<div class="job-meta">Core Scientific • Hardware Engineering Team • Grand Forks • Feb 2021 - Sep 2024</div>
|
|
<ul>
|
|
<li>Performed circuit-level diagnostics and repair of I2C-based systems, including trace repair and component-level soldering</li>
|
|
<li>Programmed and configured PIC microcontrollers for sensor applications and hardware testing</li>
|
|
<li>Developed automation tooling in Bash to streamline diagnostic workflows, reducing system downtime by 20%</li>
|
|
<li>Led cross-functional infrastructure upgrade projects involving dozens of team members, delivering under budget and ahead of schedule</li>
|
|
<li>Executed PCB rework and component replacement on high-density boards using precision soldering techniques</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="experience-item">
|
|
<h3>Site Reliability Engineer</h3>
|
|
<div class="job-meta">Core Scientific • Grand Forks • Sep 2024 - Present</div>
|
|
<ul>
|
|
<li>Deployed observability infrastructure using Grafana, Loki, and Prometheus for system monitoring and log aggregation</li>
|
|
<li>Conducted integration testing for new software deployments in Kubernetes environments</li>
|
|
<li>Developed error tracking methodologies using Datadog to identify and prevent potential system failures</li>
|
|
</ul>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="section">
|
|
<h2>Projects</h2>
|
|
<div class="section-divider"></div>
|
|
<div class="experience-item">
|
|
<h3>ESP32 Motor Driver (C/C++)</h3>
|
|
<ul>
|
|
<li>Designed and implemented motor control firmware for ESP32 microcontroller</li>
|
|
<li>Developed PWM-based speed control and real-time feedback systems</li>
|
|
<li>Implemented communication protocols for external control interfaces</li>
|
|
</ul>
|
|
</div>
|
|
<p style="font-size: 0.95em; color: #2a2a2a; margin-top: 15px;">
|
|
For detailed writeups of technical projects, visit
|
|
<a href="https://steen.run/blog" style="color: var(--deep-navy); text-decoration: none; border-bottom: 2px solid var(--rich-gold); font-weight: 500;">steen.run/blog</a>
|
|
</p>
|
|
</section>
|
|
|
|
<section class="section">
|
|
<h2>Education</h2>
|
|
<div class="section-divider"></div>
|
|
<div class="education-item">
|
|
<h3>Computer Science (75% Complete)</h3>
|
|
<div class="edu-meta">Relevant Coursework: Data Structures, Computer Architecture, Embedded Systems, Algorithms</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="section">
|
|
<h2>Skills</h2>
|
|
<div class="section-divider"></div>
|
|
<div class="skills">
|
|
<span class="skill-tag">C/C++</span>
|
|
<span class="skill-tag">Python</span>
|
|
<span class="skill-tag">Bash</span>
|
|
<span class="skill-tag">Linux/Unix</span>
|
|
<span class="skill-tag">ESP32</span>
|
|
<span class="skill-tag">PIC Microcontrollers</span>
|
|
<span class="skill-tag">I2C</span>
|
|
<span class="skill-tag">Motor Control</span>
|
|
<span class="skill-tag">Circuit Analysis</span>
|
|
<span class="skill-tag">Soldering</span>
|
|
<span class="skill-tag">Trace Repair</span>
|
|
<span class="skill-tag">Oscilloscope</span>
|
|
<span class="skill-tag">Multimeter</span>
|
|
<span class="skill-tag">Git</span>
|
|
<span class="skill-tag">Docker</span>
|
|
<span class="skill-tag">Kubernetes</span>
|
|
</div>
|
|
</section>
|
|
</main>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|