resume: add initial freebsd stuff, reformat a bit

Signed-off-by: Naman Sood <mail@nsood.in>
This commit is contained in:
Naman Sood 2023-08-14 00:56:12 -04:00
parent 87936c2f79
commit f355d65dd9
4 changed files with 186 additions and 58 deletions

View file

@ -47,7 +47,7 @@ button#print i {
background-position: center top; background-position: center top;
} }
#page .page-contents { #page .page-contents {
padding: 14pt 42pt 21pt; padding: 28pt 42pt 0;
} }
@media print { @media print {
@ -72,10 +72,9 @@ p {
h1.name { h1.name {
margin: 0; margin: 0;
text-align: center; text-align: center;
font-size: 22pt; font-size: 20pt;
line-height: 21pt; line-height: 21pt;
padding-top: 7pt; height: 21pt;
height: 28pt;
font-weight: 600; font-weight: 600;
} }
@ -143,7 +142,7 @@ h2:before {
width: 100%; width: 100%;
box-sizing: content-box; box-sizing: content-box;
height: 0; height: 0;
border-top: 1.5pt solid #63c8d3; border-top: 1.5pt solid #ff61b0;
z-index: -1; z-index: -1;
} }
@ -151,6 +150,7 @@ h3 {
margin: 0; margin: 0;
font-size: 9.5pt; font-size: 9.5pt;
font-weight: 600; font-weight: 600;
padding-right: 6pt;
} }
h3 a i.fa { h3 a i.fa {
font-size: 7pt; font-size: 7pt;
@ -162,9 +162,6 @@ h4 {
font-style: italic; font-style: italic;
font-weight: 400; font-weight: 400;
font-size: 8.5pt; font-size: 8.5pt;
display: flex;
width: 100%;
justify-content: space-between;
} }
strong { strong {
@ -214,12 +211,35 @@ section.experience article.work-exp {
margin: 7pt 0 0; margin: 7pt 0 0;
} }
aside.date { span.bullet {
position: absolute; display: block;
right: 0; position: relative;
top: 0; width: 14pt;
height: 14pt; height: 14pt;
}
span.bullet:before {
content: "·";
height: 14pt;
width: 14pt;
display: block;
position: absolute;
top: 0;
left: 0;
text-align: center;
line-height: 14pt; line-height: 14pt;
font-weight: bold;
font-size: 12pt;
}
article > div {
display: flex;
justify-content: space-between;
}
article > div > div {
display: flex;
}
article > div > div.right-side {
justify-content: flex-end;
} }
aside.languages { aside.languages {
@ -237,6 +257,7 @@ section.projects article.project:first-of-type {
section.projects div.project-title { section.projects div.project-title {
display: flex; display: flex;
align-items: baseline; align-items: baseline;
justify-content: flex-start;
height: 14pt; height: 14pt;
} }
section.projects div.project-title h3 { section.projects div.project-title h3 {

View file

@ -54,7 +54,7 @@ button#print {
background-position: center top; background-position: center top;
.page-contents { .page-contents {
padding: $ls 3*$ls 1.5*$ls; padding: 2*$ls 3*$ls 0;
} }
} }
@ -83,10 +83,9 @@ p {
h1.name { h1.name {
margin: 0; margin: 0;
text-align: center; text-align: center;
font-size: 22pt; font-size: 20pt;
line-height: 1.5*$ls; line-height: 1.5*$ls;
padding-top: 0.5*$ls; height: 1.5*$ls;
height: 2*$ls;
font-weight: 600; font-weight: 600;
} }
@ -158,7 +157,7 @@ h2 {
width: 100%; width: 100%;
box-sizing: content-box; box-sizing: content-box;
height: 0; height: 0;
border-top: 1.5pt solid #63c8d3; border-top: 1.5pt solid #ff61b0;
z-index: -1; z-index: -1;
} }
} }
@ -167,6 +166,7 @@ h3 {
margin: 0; margin: 0;
font-size: 9.5pt; font-size: 9.5pt;
font-weight: 600; font-weight: 600;
padding-right: 6pt;
a i.fa { a i.fa {
font-size: 7pt; font-size: 7pt;
@ -179,9 +179,9 @@ h4 {
font-style: italic; font-style: italic;
font-weight: 400; font-weight: 400;
font-size: 8.5pt; font-size: 8.5pt;
display: flex; // display: flex;
width: 100%; // width: 100%;
justify-content: space-between; // justify-content: space-between;
} }
strong { strong {
@ -236,18 +236,51 @@ section.experience {
} }
} }
aside.date { // aside.date {
position: absolute; // position: absolute;
right: 0; // right: 0;
top: 0; //calc($ls / 2); // top: 0; //calc($ls / 2);
// height: $ls;
// line-height: $ls;
// // $offset: $4pt;
// // top: -$offset;
// // background: black;
// // color: white;
// // padding: $offset 1.5*$offset;
// // height: $ls + 2*$offset;
// }
span.bullet {
display: block;
position: relative;
width: $ls;
height: $ls; height: $ls;
&:before {
content: '·';
height: $ls;
width: $ls;
display: block;
position: absolute;
top: 0;
left: 0;
text-align: center;
line-height: $ls; line-height: $ls;
// $offset: $4pt; font-weight: bold;
// top: -$offset; font-size: 12pt;
// background: black; }
// color: white; }
// padding: $offset 1.5*$offset;
// height: $ls + 2*$offset; article > div {
display: flex;
justify-content: space-between;
> div {
display: flex;
&.right-side {
justify-content: flex-end;
}
}
} }
aside.languages { aside.languages {
@ -267,6 +300,7 @@ section.projects {
div.project-title { div.project-title {
display: flex; display: flex;
align-items: baseline; align-items: baseline;
justify-content: flex-start;
height: $ls; height: $ls;
h3 { h3 {

View file

@ -21,9 +21,15 @@
<section class="education"> <section class="education">
<h2><span>Education</span></h2> <h2><span>Education</span></h2>
<article class="institution"> <article class="institution">
<h3>University of Waterloo</h3> <div class="institution-info">
<h4>Bachelor of Computer Science &ndash; 3.9 GPA</h4> <div class="left-side">
<h3 class="institution">University of Waterloo</h3>
<h4 class="position">Bachelor of Computer Science &ndash; 3.9 GPA</h4>
</div>
<div class="right-side">
<aside class="date">Sep 2019 &ndash; Apr 2024</aside> <aside class="date">Sep 2019 &ndash; Apr 2024</aside>
</div>
</div>
<ul> <ul>
<li><strong>Relevant Coursework: </strong><span>Operating Systems, Concurrency, Networks, Security, Data Structures & Algorithms</span></li> <li><strong>Relevant Coursework: </strong><span>Operating Systems, Concurrency, Networks, Security, Data Structures & Algorithms</span></li>
</ul> </ul>
@ -37,14 +43,49 @@
<section class="experience"> <section class="experience">
<h2><span>Experience</span></h2> <h2><span>Experience</span></h2>
<article class="work-exp"> <article class="work-exp">
<h3 class="employer">FreeBSD Foundation</h3> <div class="employer-info">
<h4 class="position">Software Developer Intern <span class="location">Kitchener, ON</span></h4> <div class="left-side">
<aside class="date">May 2023 &ndash; Aug 2023</aside> <h3 class="employer">Tailscale</h3>
<h4 class="position">Software Developer Intern</h4>
</div>
<div class="right-side">
<span class="location">Toronto, ON</span>
<span class="bullet"></span>
<aside class="date">Sep 2023 &ndash; Dec 2023</aside>
</div>
</div>
</article> </article>
<article class="work-exp"> <article class="work-exp">
<div class="employer-info">
<div class="left-side">
<h3 class="employer">FreeBSD Foundation</h3>
<h4 class="position">Software Developer Intern</h4>
</div>
<div class="right-side">
<span class="location">Kitchener, ON</span>
<span class="bullet"></span>
<aside class="date">May 2023 &ndash; Aug 2023</aside>
</div>
</div>
<ul>
<li><strong>Modernized firewall infrastructure</strong> by adding support for IPv6 multicast addresses in firewall state-syncing kernel module.</li>
<li><strong>Enabled peer-to-peer networking</strong> over PF firewall by porting full-cone NAT to current code, showing <strong>3x performance gain</strong>.</li>
<li>Ensured compatibility with container infrastructure by patching Conmon monitoring software to fix regressions on FreeBSD.</li>
<li>Enhanced reliability by fixing longstanding bugs in C core system utilities, used for user management and disk monitoring.</li>
</ul>
</article>
<article class="work-exp">
<div class="employer-info">
<div class="left-side">
<h3 class="employer">data.world</h3> <h3 class="employer">data.world</h3>
<h4 class="position">Software Engineer Intern <span class="location">Austin, TX</span></h4> <h4 class="position">Software Engineer Intern</h4>
</div>
<div class="right-side">
<span class="location">Austin, TX</span>
<span class="bullet"></span>
<aside class="date">May 2022 &ndash; Aug 2022</aside> <aside class="date">May 2022 &ndash; Aug 2022</aside>
</div>
</div>
<ul> <ul>
<li><strong>Spearheaded Databricks and Apache Spark support</strong> in Java-based data catalog service by integrating JDBC database drivers.</li> <li><strong>Spearheaded Databricks and Apache Spark support</strong> in Java-based data catalog service by integrating JDBC database drivers.</li>
<li>Boosted user productivity in code editing workspace by generating autocompletions for RDF classes and properties.</li> <li>Boosted user productivity in code editing workspace by generating autocompletions for RDF classes and properties.</li>
@ -53,9 +94,17 @@
</ul> </ul>
</article> </article>
<article class="work-exp"> <article class="work-exp">
<div class="employer-info">
<div class="left-side">
<h3 class="employer">Carta</h3> <h3 class="employer">Carta</h3>
<h4 class="position">Software Engineer Intern, Infrastructure <span class="location">Kitchener, ON</span></h4> <h4 class="position">Software Engineer Intern, Infrastructure</h4>
</div>
<div class="right-side">
<span class="location">Kitchener, ON</span>
<span class="bullet"></span>
<aside class="date">Sep 2021 &ndash; Dec 2021</aside> <aside class="date">Sep 2021 &ndash; Dec 2021</aside>
</div>
</div>
<ul> <ul>
<li>Designed distributed gRPC logging system using Apache Fluent for <strong>scalable auditing and compliance</strong> across organization.</li> <li>Designed distributed gRPC logging system using Apache Fluent for <strong>scalable auditing and compliance</strong> across organization.</li>
<li>Created proof-of-concept for logging system using Kubernetes DaemonSets, with ConfigMaps to deploy custom configurations.</li> <li>Created proof-of-concept for logging system using Kubernetes DaemonSets, with ConfigMaps to deploy custom configurations.</li>
@ -65,45 +114,69 @@
</ul> </ul>
</article> </article>
<article class="work-exp"> <article class="work-exp">
<div class="employer-info">
<div class="left-side">
<h3 class="employer">Tailscale</h3> <h3 class="employer">Tailscale</h3>
<h4 class="position">Software Engineer Intern <span class="location">Toronto, ON</span></h4> <h4 class="position">Software Developer Intern</h4>
</div>
<div class="right-side">
<span class="location">Toronto, ON</span>
<span class="bullet"></span>
<aside class="date">Jan 2021 &ndash; Apr 2021</aside> <aside class="date">Jan 2021 &ndash; Apr 2021</aside>
</div>
</div>
<ul> <ul>
<li><strong>Introduced cloud/serverless support</strong> by emulating TCP/IP stack in userspace for Docker containers, using Google gVisor.</li> <li><strong>Introduced cloud/serverless support</strong> by emulating TCP/IP stack in userspace for Docker containers, using Google gVisor.</li>
<li>Enabled standardized communication using SOCKS5 protocol over Tailscale VPN by implementing proxy server in Go.</li> <li>Enabled standardized communication using SOCKS5 protocol over Tailscale VPN by implementing proxy server in Go.</li>
<li><strong>Simplified deployments in cloud environments</strong> by creating single-session authentication keys with auto-cleanup.</li> <li><strong>Streamlined deployments in cloud environments</strong> by creating single-session authentication keys with auto-cleanup.</li>
<li>Developed a <a href="https://github.com/tailscale/github-action">GitHub Action</a> for end-users that allows <strong>plug-and-play security</strong> for CI/CD pipelines.</li> <li>Developed a <a href="https://github.com/tailscale/github-action">GitHub Action</a> for end-users that allows <strong>plug-and-play security</strong> for CI/CD pipelines.</li>
<li>Expanded outreach within the technical community by writing <a href="https://tailscale.com/blog/2021-05-github-actions-and-tailscale/">long-form content for corporate blog.</a></li> <li>Expanded outreach within the technical community by writing <a href="https://tailscale.com/blog/2021-05-github-actions-and-tailscale/">long-form content for corporate blog.</a></li>
</ul> </ul>
</article> </article>
<article class="work-exp"> <article class="work-exp">
<div class="employer-info">
<div class="left-side">
<h3 class="employer">University of Waterloo</h3> <h3 class="employer">University of Waterloo</h3>
<h4 class="position">Research Associate <span class="location">Waterloo, ON</span></h4> <h4 class="position">Research Associate</h4>
</div>
<div class="right-side">
<span class="location">Waterloo, ON</span>
<span class="bullet"></span>
<aside class="date">May 2020 &ndash; Aug 2020</aside> <aside class="date">May 2020 &ndash; Aug 2020</aside>
</div>
</div>
<ul> <ul>
<li>Optimized Go consensus system to <strong>3x throughput</strong> by increasing maximum transaction count sent in each message.</li> <li>Optimized Go consensus system to <strong>3x throughput</strong> by increasing maximum transaction count sent in each message.</li>
<li>Streamlined deployment of project by using Docker images to generate repeatable builds across diverse environments.</li> <li>Streamlined deployment of project by using Docker images to generate repeatable builds across diverse environments.</li>
<li>Unified similar codebases by migrating duplicate components to a single C++ project.</li> <!-- <li>Unified similar codebases by migrating duplicate components to a single C++ project.</li> -->
<li>Assisted distributed systems research by conducting experiments on AWS EC2 and analyzing performance data in gnuplot.</li> <li>Assisted distributed systems research by conducting experiments on AWS EC2 and analyzing performance data in gnuplot.</li>
</ul> </ul>
</article> </article>
<!-- <article class="work-exp"> <article class="work-exp">
<div class="employer-info">
<div class="left-side">
<h3 class="employer">Creesync Software</h3> <h3 class="employer">Creesync Software</h3>
<h4 class="position">Software Engineering Intern <span class="location">New Delhi, India</span></h4> <h4 class="position">Software Engineering Intern</h4>
</div>
<div class="right-side">
<span class="location">New Delhi, India</span>
<span class="bullet"></span>
<aside class="date">May 2019 &ndash; Aug 2019</aside> <aside class="date">May 2019 &ndash; Aug 2019</aside>
</div>
</div>
<ul> <ul>
<li>Simplified distribution of professionally clicked photos by building Electron and React Native apps.</li> <li>Simplified distribution of professionally clicked photos by building Electron and React Native apps.</li>
<li>Designed and deployed API to upload and preview photos in low-bandwidth situations using Node.js and AWS S3.</li> <li>Designed and deployed API to upload and preview photos in low-bandwidth situations using Node.js and AWS S3.</li>
</ul> </ul>
</article> --> </article>
<article class="work-exp"> <!-- <article class="work-exp">
<h3 class="employer">The Girl Code</h3> <h3 class="employer">The Girl Code</h3>
<h4 class="position">Volunteer Full Stack Developer <span class="location">New Delhi, India</span></h4> <h4 class="position">Volunteer Full Stack Developer <span class="location">New Delhi, India</span></h4>
<aside class="date">Mar 2018 &ndash; Apr 2020</aside> <aside class="date">Mar 2018 &ndash; Apr 2020</aside>
<ul> <ul>
<li>Developed online platform to interactively teach programming in <strong>10+ workshops across 3 countries</strong> using NodeJS.</li> <li>Developed online platform to interactively teach programming in <strong>10+ workshops across 3 countries</strong> using NodeJS.</li>
</ul> </ul>
</article> </article> -->
</section> </section>
<section class="projects"> <section class="projects">
<h2><span>Projects</span></h2> <h2><span>Projects</span></h2>

Binary file not shown.