Skip to content

Commit 4df30f8

Browse files
author
danphenderson
committed
Update CV.
1 parent e01de8b commit 4df30f8

File tree

1 file changed

+62
-23
lines changed

1 file changed

+62
-23
lines changed

src/pages/CV.tsx

+62-23
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,18 @@ const aboutMe = {
1212
email: 'me@danhenderson.dev',
1313
phone: '906-281-7641',
1414
location: 'Seattle, WA',
15-
about:
16-
"As a Cloud Data Platform Engineer with 1.5 years of experience, I am passionate about leading big-data solutions and driving analytics and insights for growth-oriented organizations prioritizing developer experience using CI/CD automation and cloud infrastructure defined as code. In my previous role, I built and optimized high-performance data engines, increasing Lucerna Health's ingestion pipeline throughput by over 50% and generating significant savings for our customers' compute-expense. I have also co-authored a publication exploring a novel scheme incorporating curvature information generated using SIMD-parallel forward-mode Automatic Differentiation into unconstrained Quasi-Newton minimization of a smooth objective function. Skilled in AWS, Python, Julia, Spark, DBT, FastAPI/Django, gRPC, Docker, and ML/NLP, I offer cross-disciplinary expertise in mathematics, computer science, finance, and economics. I seek opportunities that leverage my skills and experience to drive organizational growth and innovation, focusing on backend web application roles in data pipelines, ML/AI, and DevOps/Automation engineering. In my free time, I enjoy being inspired by the mountains, skiing, biking, and climbing the granite slopes.",
1715
};
1816

1917

2018
const codingExamples = [
2119
{
22-
title: 'Personal Portfolio',
23-
description: 'My personal portfolio website built using React, TypeScript, and Material UI 5. It is deployed on AWS using S3, CloudFront, and Route53.',
20+
title: 'chromex',
21+
description: "An asynchronous interface for chrome browser automation's and scrapping that is built on bs4 and selenium.",
22+
links: ['https://github.com/danphenderson/python-chromex'],
23+
},
24+
{
25+
title: 'Portfolio',
26+
description: 'My personal portfolio website built with React-TypeScript, using Material UI 5. It is deployed on AWS using S3, CloudFront, and Route53.',
2427
links: ['https://danhenderson.dev',],
2528
},
2629
{
@@ -37,9 +40,26 @@ const codingExamples = [
3740
title: 'MasterPlan',
3841
description: 'A java application that allows users to create and manage a DAG structure of tasks and corresponding subtasks. It was built using Maven, Java11, and JavaFX.',
3942
links: ['https://github.com/danphenderson/masterplan-app']
40-
}
43+
},
44+
{
45+
title: 'LeetCode Solutions',
46+
description: "A collection of my solutions to LeetCode problems.",
47+
links: ['https://github.com/danphenderson/leetcode-solutions']
48+
},
4149
]
4250

51+
const certificates = [
52+
{
53+
title: "AWS Certified Solutions Architect – Associate",
54+
issuer: "Amazon Web Services",
55+
date: "Feburary 5th, 2024",
56+
},
57+
{
58+
title: "AWS Cloud Practitioner",
59+
issuer: "Amazon Web Services",
60+
date: "January 19th, 2024",
61+
}
62+
]
4363

4464
const experiences = [
4565
{
@@ -62,7 +82,7 @@ const experiences = [
6282
title: 'Data Scientist | Contract',
6383
startDate: 'November 2021',
6484
endDate: 'April 2022',
65-
description: "Responsible for ML feature development and operations and aided three restricted-offshore developers by rapidly resolving blockers, including infrastructure deployments, code reviews, ETL services, and quality assurance testing to accelerate their productivity.",
85+
description: "ML feature development, operations, and assisted three restricted-offshore developers by rapidly resolving blockers, e.g. infrastructure deployments, code reviews, ETL services, and QA testing to accelerate their productivity.",
6686
projects: [
6787
"Built analytics pipeline and dashboard to meet data governance auditory requirements for the HiTrust certification of the organization's multi-tenant cloud architecture.",
6888
"Introduced standard version control safeguards for our data-science department production assets and automated their deployment using AWS CDK and Bitbucket pipelines.",
@@ -81,6 +101,16 @@ const experiences = [
81101
"Built UncNLPrograms.jl, a library containing a subset of high-dimensional, nonlinear, and unconstrained optimization problems from the CUTEst set implemented in native Julia to test solvers using Automatic/Algorithmic Differentiation.",
82102
],
83103
},
104+
{
105+
company: 'Michigan Technological University',
106+
industry: 'Higher Education',
107+
title: 'Mathematics Tutor | Part Time',
108+
startDate: 'November 2021',
109+
endDate: 'April 2022',
110+
description: "Provided weekly tutoring services to NCAA student-athletes in multivariable, integral and differential calculus, ordinary differential equations, and linear algebra.",
111+
projects: [
112+
],
113+
},
84114
// Add more experiences as needed
85115
];
86116

@@ -93,14 +123,13 @@ const educationInfo = {
93123
degree: "B.S. Cum Laude, Mathematics, Applied/Computational & Minor in Computer Science",
94124
grades: "Cumulative: 3.56 | Departmental: 3.71",
95125
activities:
96-
" President & V.P., Finance Club\n" +
97-
" Representative, Undergraduate Student Government\n" +
98-
" Member, Ways and Means Committee, allocating $700K to 200+ student organizations\n" +
99-
" Liaison, Michigan Tech's Parent Fund Committee, budgeted and voted on the disbursement of $70K\n" +
100-
" Student Advisor to the Dean of the School of Business and Economics\n" +
101-
" Junior Partner, Applied Portfolio Management Program",
126+
"- President & V.P., Finance Club\n" +
127+
"- Representative, Undergraduate Student Government\n" +
128+
"- Member, Ways and Means Committee, allocating $700K to 200+ student organizations\n" +
129+
"- Liaison, Michigan Tech's Parent Fund Committee, budgeted and voted on the disbursement of $70K\n" +
130+
"- Student Advisor to the Dean of the School of Business and Economics\n" +
131+
"- Junior Partner, Applied Portfolio Management Program",
102132
achievements:
103-
"Achievements:\n" +
104133
"Recipient of Dean's List award for six semesters (Spring 2015, Summer 2015, Fall 2019, Spring 2020, Fall 2020, & Spring 2021)\n" +
105134
"Certificate of Merit for Outstanding Academic Achievement in Calculus II with Technology, Mathematical Sciences Department",
106135
};
@@ -217,15 +246,10 @@ export default function CV() {
217246
<Grid item xs={12} md={8}>
218247
<Paper elevation={3} sx={{ padding: 2, marginY: 4 }}>
219248

220-
{/* About Me */}
221-
<Box sx={{ padding: 2, marginBottom: 4 }}>
222-
<Typography variant="h4" gutterBottom>About Me</Typography>
223-
<Typography variant="body1">{aboutMe.about}</Typography>
224-
</Box>
225249

226250
{/* Experience */}
227251
<Box sx={{ padding: 2, marginBottom: 4 }}>
228-
<Typography variant="h4" gutterBottom > Professional Experience</Typography>
252+
<Typography variant="h3" gutterBottom > Experiences</Typography>
229253
{experiences.map((experience, index) => (
230254
<Box key={index}>
231255
<Typography variant="h5">{experience.title} @ {experience.company}</Typography>
@@ -236,11 +260,26 @@ export default function CV() {
236260
))}
237261
</Box>
238262

263+
264+
{/* Certificates */}
265+
<Box sx={{ padding: 2, marginBottom: 4 }}>
266+
<Typography variant="h3" gutterBottom > Certificates</Typography>
267+
{certificates.map((certificate, index) => (
268+
<Box key={index}>
269+
<Typography variant="h5">{certificate.title} </Typography>
270+
<Typography variant="subtitle1" color="textSecondary">{certificate.issuer} issued on {certificate.date}</Typography>
271+
<Divider sx={{ margin: "10px 0" }} />
272+
</Box>
273+
))}
274+
</Box>
275+
276+
239277
{/* Education */}
240278
<Box sx={{ padding: 2, marginBottom: 4 }}>
241-
<Typography variant="h4" gutterBottom> Education</Typography>
279+
<Typography variant="h3" gutterBottom> Education</Typography>
242280
<Typography variant="h5">{educationInfo.university}</Typography>
243-
<Typography variant="body1">{educationInfo.degree} | {educationInfo.grades} </Typography>
281+
<Typography variant="subtitle1">{educationInfo.degree}</Typography>
282+
<Typography variant="subtitle1">{educationInfo.grades}</Typography>
244283

245284
{/* Activities */}
246285
{educationInfo.activities.split("\n").map((activity, index) => (
@@ -253,9 +292,10 @@ export default function CV() {
253292
<Divider sx={{ margin: "10px 0" }} />
254293
</Box>
255294

295+
256296
{/* Coding Examples */}
257297
<Box sx={{ padding: 2, marginBottom: 4 }}>
258-
<Typography variant="h4" gutterBottom> Coding Examples</Typography>
298+
<Typography variant="h3" gutterBottom> Coding Examples</Typography>
259299
{codingExamples.map((example, index) => (
260300
<Box key={index} sx={{ marginBottom: 2 }}>
261301
<Typography variant="h5">{example.title}</Typography>
@@ -268,7 +308,6 @@ export default function CV() {
268308
</Box>
269309
))}
270310
</Box>
271-
272311
</Paper>
273312
</Grid>
274313
</BackgroundPaper>

0 commit comments

Comments
 (0)