diff --git a/public/david-leger-resume.pdf b/public/david-leger-resume.pdf index f656e27..808ecac 100644 Binary files a/public/david-leger-resume.pdf and b/public/david-leger-resume.pdf differ diff --git a/src/sections/Header/Header.tsx b/src/sections/Header/Header.tsx index 1d2c7be..f729b9b 100644 --- a/src/sections/Header/Header.tsx +++ b/src/sections/Header/Header.tsx @@ -75,8 +75,11 @@ function Header() { David Leger - 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. ); diff --git a/src/sections/Skills/Skills.tsx b/src/sections/Skills/Skills.tsx index 56df051..f7be8b6 100644 --- a/src/sections/Skills/Skills.tsx +++ b/src/sections/Skills/Skills.tsx @@ -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() { @@ -36,18 +39,25 @@ function Skills() {
Technologies - Languages, frameworks, and tools that I know exceptionally well + Languages, frameworks, and tools that I know well
- +
Specialties - Areas in which I have valuable domain knowledge and experience + I have extensive domain knowledge and experience in these areas
+
+ Learning + + Technologies & concepts I'm learning in my spare time + +
+ ); } diff --git a/src/sections/Work/content.ts b/src/sections/Work/content.ts index 24d626d..d37d515 100644 --- a/src/sections/Work/content.ts +++ b/src/sections/Work/content.ts @@ -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' }, ], }, { diff --git a/wordlist.txt b/wordlist.txt index d266160..82549bb 100644 --- a/wordlist.txt +++ b/wordlist.txt @@ -19,3 +19,6 @@ svgr urql vuejs wordmark +shadcn +amazonwebservices +cypressio \ No newline at end of file