blob: b7448ca896d9a157c01ddc1a722e0774f4b551dc [file] [log] [blame]
Samuel Shuertc86816a2024-04-27 16:12:34 -04001---
2import Layout from '../layouts/Layout.astro';
3import Work from '../components/Work.astro';
4---
5
6<Layout title="Samuel Shuert Resume">
7 <main class={`flex min-h-screen ${import.meta.env.PRODUCTION === "true" ? "w-full lg:w-1/2" : "w-full"} flex-col justify-center p-2 w-full`}>
8 <div id="info" class="grid grid-cols-3 grid-rows-1 h-fit gap-2 my-2 justify-between w-full">
9 <div class="flex flex-col text-sm">
10 <h1 class="text-sm">Delaware, USA</h1>
11 <a href="mailto:coded@clicks.codes"><p>coded@clicks.codes</p></a>
12 </div>
13 <h1 class="text-2xl">Samuel Shuert</h1>
14 <div class="flex flex-col text-sm text-right">
15 <a href="https://linkedin.com/in/samuelshuert"><p class="underline">linkedin.com/in/samuelshuert</p></a>
16 <a href="https://github.com/TheCodedProf"><p class="underline">github.com/TheCodedProf</p></a>
17 <a href="https://git.clicks.codes/q/owner:coded"><p class="underline">git.clicks.codes/q/owner:coded</p></a>
18 <a href="https://app.codecrafters.io/users/TheCodedProf"><p class="underline">app.codecrafters.io/users/TheCodedProf</p></a>
19 </div>
20 </div>
21
22 <h1 class="self-start text-xl">Summary</h1>
23 <hr class="w-full border-t border-t-black mb-2"/>
24 <p class="text-sm mb-8 pl-4 text-left w-full">
25 I'm a 21 year old developer who's been programming since I was 11. I started with Python and have since taken my skills to both NodeJS and Rust.
26 I'm eager to make your acquaintance and put my skills to use in a collaborative environment.
27 </p>
28
29 <div id="experience" class="flex flex-col h-fit gap-8 my-2 w-full mb-16">
30 <Work jobTitle={"Developer"} area={"Infrastructure"} projectName={"Clicks Nix"} dateFrom={"Aug 2022"} dateTo={"Current"} obsolete={false} >
31 <li>
32 Nix configuration for Clicks servers.
33 </li>
34 <li>
35 Responsible for general mainenance and major updates, depends on current needs.
36 </li>
37 <li>
38 Written in Nix
39 </li>
40 </Work>
41 <Work jobTitle={"Developer"} area={"Infrastructure"} projectName={"Clicks Server"} dateFrom="Mar 2022" dateTo={"Current"} obsolete={false} >
42 <li>
43 Uptime management for Clicks servers.
44 </li>
45 <li>
46 Ensure Clicks projects and additionally hosted tools do not go offline.
47 </li>
48 <li>
49 Use of nix containers and docker for seperation of tasks.
50 </li>
51 </Work>
52 <Work jobTitle={"Developer"} area={"Backend"} projectName={"Nucleus"} dateFrom={"Sep 2020"} dateTo={"Sep 2023"} obsolete={false}>
53 <li>Nucleus (Feb 2023 - Sep 2023)</li>
54 <ul class="ml-8 mt-2 list-disc text-sm mb-4">
55 <li>
56 Discord moderation bot. Rewritten with TypeScript.
57 </li>
58 <li>
59 I was responsible for database read/write and slash command registration.
60 </li>
61 <li>
62 Used Node.JS (w/ TypeScript), discord.js and MongoDB
63 </li>
64 </ul>
65 <li>Remote Server Management (RSM) Version 2 (Jan 2021 - Jan 2022)</li>
66 <ul class="ml-8 mt-2 list-disc text-sm mb-4">
67 <li>
68 Discord moderation bot. Additional features including NSFW image detection and checking for malware.
69 </li>
70 <li>
71 I was responsible for the guild settings flow, tesseract flow and clamav flow.
72 </li>
73 <li>
74 Used Python, discord.py and JSON
75 </li>
76 </ul>
77 <li>Remote Server Management (RSM) Version 1 (Sep 2020 - Jan 2021)</li>
78 <ul class="ml-8 mt-2 list-disc text-sm">
79 <li>
80 Discord moderation bot. Featuring readable UI and extra moderation features Discord does not have like tempbans.
81 </li>
82 <li>
83 I was responsible for the guild settings flow.
84 </li>
85 <li>
86 Used Python, discord.py and JSON
87 </li>
88 </ul>
89 </Work>
90 <Work jobTitle={"Developer"} area={"Backend"} projectName={"Innuendo"} dateFrom={"Jul 2020"} dateTo={"Current"} obsolete={false}>
91 <li>Innuendo (Dec 2023 - Current)</li>
92 <ul class="ml-8 mt-2 list-disc text-sm">
93 <li>
94 Cardboard Against Humankind remade in Rust
95 </li>
96 <li>
97 I&apos;m the main developer for this project, in charge of coordinating other people the main game loop code.
98 </li>
99 <li>
100 Uses Rust, Serenity-rs + Poise, and Postgres
101 </li>
102 </ul>
103 <li>Cardboard Against Humankind (Jul 2020 - Sep 2021)</li>
104 <ul class="ml-8 mt-2 list-disc text-sm">
105 <li>
106 A Cards Against Humanity discord bot. Was invited to 2000+ servers and had ~400 congruent games at peak times.
107 </li>
108 <li>
109 I was responsible for writing the game loop and discord interactions.
110 </li>
111 <li>
112 Used Python, discord.py and JSON
113 </li>
114 </ul>
115 </Work>
116 <Work jobTitle={"Lead Developer"} area={"Full Stack"} projectName={"Infinite Stories"} dateFrom={"Oct 2021"} dateTo={"Jun 2022"} obsolete={true} >
117 <li>
118 Website that allowed writers to publish excerpts from their books online to get feedback
119 </li>
120 <li>
121 I was responsible for full website design, component creation, read/write to supabase,
122 </li>
123 <li>
124 Used Next.JS for web development and Supabase for storage
125 </li>
126 </Work>
127 </div>
128 <h1 class="self-start text-xl">Certifications</h1>
129 <hr class="w-full border-t border-t-black"/>
130
131 <div id="skills" class="flex flex-col h-fit gap-2 my-2 w-full mb-16">
132 <p class="text-sm"><strong>CodeCrafters: </strong>HTTP Server (Rust)</p>
133 </div>
134 <h1 class="self-start text-xl">Skills</h1>
135 <hr class="w-full border-t border-t-black"/>
136
137 <div id="skills" class="flex flex-col h-fit gap-2 my-2 w-full">
138 <p class="text-sm"><strong>Languages: </strong>TypeScript, JavaScript, Rust, Nix, Python</p>
139 <p class="text-sm"><strong>Tools: </strong>MongoDB, Postgres, Supabase, Next.JS, Vercel, Git, Gerrit, GitHub, Google Cloud, Cloudflare (DNS, Workers, Zero Trust, cloudflared), AWS, Nix</p>
140 </div>
141 </main>
142</Layout>