Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified public/david-leger-resume.pdf
Binary file not shown.
7 changes: 5 additions & 2 deletions src/sections/Header/Header.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,11 @@ function Header() {
<Heading level={1}>David Leger</Heading>
<BasicInfo />
<Prose size="large">
Software engineer with design and product sensibilities. I’m passionate
about creating great experiences on the web.
Software engineer with design sensibilities and a strong product
mindset. Track record of building high quality web products with over 8+
years of experience. Extensive experience with remote-first companies,
working with high levels of autonomy, solving cross-functional problems,
and managing ambiguity.
</Prose>
</StyledHeader>
);
Expand Down
40 changes: 25 additions & 15 deletions src/sections/Skills/Skills.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,25 +9,28 @@ const skills: Skill[] = [
{ label: 'TypeScript', icon: 'typescript-plain' },
{ label: 'React', icon: 'react-plain' },
{ label: 'Terraform', icon: 'terraform-plain' },
{ label: 'CSS', icon: 'css3-plain' },
{ label: 'HTML', icon: 'html5-plain' },
{ label: 'CSS', icon: 'css3-plain' },
{ label: 'Tailwind', icon: 'tailwindcss-original' },
{ label: 'Storybook', icon: 'storybook-plain' },
{ label: 'Testing Library' },
{ label: 'GraphQL', icon: 'graphql-plain' },
{ label: 'Web Components' },
];

// const learning: Skill[] = [
// { label: 'Kubernetes', icon: 'kubernetes-plain' },
// { label: 'Terraform', icon: 'terraform-plain' },
// { label: 'Docker', icon: 'docker-plain' },
// { label: 'Go', icon: 'go-plain' },
// ];
const learning: Skill[] = [
{ label: 'Convex' },
{ label: 'TanStack Start/Query/Router/Forms' },
{ label: 'Go', icon: 'go-plain' },
];

const softSkills: Skill[] = [
{ label: 'Growth engineering' },
{ label: 'Design systems' },
{ label: 'Web accessibility & best practices' },
{ label: 'Testing methodologies (unit, E2E, VRT)' },
{ label: 'Remote communication' },
{ label: 'Product engineering (Shape Up methodologies)' },
{ label: 'Design systems & design engineering' },
{ label: 'Web standards (a11y, best practices, performance, browser APIs)' },
{ label: 'Testing methodologies (unit, integration, E2E, VRT)' },
{ label: 'On-call duties & incident management' },
{ label: 'Remote work' },
];

function Skills() {
Expand All @@ -36,18 +39,25 @@ function Skills() {
<header>
<Heading level={3}>Technologies</Heading>
<Prose size="small">
Languages, frameworks, and tools that I know exceptionally well
Languages, frameworks, and tools that I know well
</Prose>
</header>
<TagList items={skills} />

<header>
<Heading level={3}>Specialties</Heading>
<Prose size="small">
Areas in which I have valuable domain knowledge and experience
I have extensive domain knowledge and experience in these areas
</Prose>
</header>
<TagList items={softSkills} />
<header>
<Heading level={3}>Learning</Heading>
<Prose size="small">
Technologies & concepts I&apos;m learning in my spare time
</Prose>
</header>
<TagList items={learning} />
</Section>
);
}
Expand Down
30 changes: 19 additions & 11 deletions src/sections/Work/content.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,23 +68,31 @@ export const work: Work[] = [
},
},
highlights: [
'Rearchitecting Kard’s frontend to prioritize testability, simplified state management, and consistent design',
'Led initiative to migrate Kard’s frontend codebase to TypeScript',
'Core maintainer of Kard’s design system and component library',
'Building and maintaining backend services and APIs in Node & Go with Postgres, MongoDB, and DynamoDB databases',
'Tech lead for Kard’s frontend',
'Led the development of Kard’s design system and component library based on shadcn/ui',
'Led initiative to migrate Kard’s codebase from JavaScript to TypeScript',
'Building scalable microservices on AWS using TypeScript, Go, MongoDB, PostgreSQL, SNS/SQS, S3',
'Developed org-wide standards for observability/monitoring and incident management with DataDog',
],
tags: [
{ label: 'TypeScript', icon: 'typescript-plain' },
{ label: 'Terraform', icon: 'terraform-plain' },
{ label: 'React', icon: 'react-plain' },
{ label: 'Tailwind', icon: 'tailwindcss-original' },
{ label: 'Vite', icon: 'vitejs-original' },
{ label: 'Vitest', icon: 'vitest-original' },
{ label: 'Storybook', icon: 'storybook-plain' },
{
label: 'AWS (Lambda, SNS/SQS, S3, RDS, DynamoDB)',
icon: 'amazonwebservices-plain-wordmark',
},
{ label: 'Terraform', icon: 'terraform-plain' },
{ label: 'Go', icon: 'go-original-wordmark' },
{ label: 'Datadog', icon: 'datadog-original' },
{ label: 'MongoDB', icon: 'mongodb-plain' },
{ label: 'Vite' },
{ label: 'Vitest', icon: 'vitest-plain' },
{ label: 'shadcn/ui' },
{ label: 'Storybook', icon: 'storybook-plain' },
{ label: 'Cypress', icon: 'cypressio-plain' },
{ label: 'Mocha/Chai/Sinon' },
{ label: 'Testing Library' },
{ label: 'Serverless' },
{ label: 'Datadog' },
{ label: 'DynamoDB' },
],
},
{
Expand Down
3 changes: 3 additions & 0 deletions wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,6 @@ svgr
urql
vuejs
wordmark
shadcn
amazonwebservices
cypressio