256 lines
10 KiB
TeX
256 lines
10 KiB
TeX
% !TEX program = xelatex
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% LaTeX Template: Curriculum Vitae
|
|
%
|
|
% Original template from: http://www.howtotex.com/
|
|
% Modified for use by Naman Sood.
|
|
%
|
|
% Feel free to distribute this template, but please keep the
|
|
% referal to HowToTeX.com.
|
|
%
|
|
% HowToTeX seems to be dead, but the unmodified template can
|
|
% be found at:
|
|
% https://www.overleaf.com/latex/templates/your-new-cv/xqzhcmqkqrtw
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\documentclass{article}
|
|
\usepackage[english]{babel}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage{lmodern}
|
|
\usepackage[protrusion=true]{microtype}
|
|
\usepackage[svgnames]{xcolor} % Colours by their 'svgnames'
|
|
\usepackage[margin=0.65in,top=0.3in,bottom=0.15in]{geometry}
|
|
\usepackage{url}
|
|
\usepackage{lmodern} % Allow arbitrary font sizes
|
|
\usepackage{textcomp}
|
|
\usepackage{hyperref}
|
|
\usepackage{enumitem}
|
|
%\usepackage{fontspec}
|
|
%\setsansfont{Roboto}
|
|
|
|
%% Define a new 'modern' style for the url package that will use a smaller font.
|
|
\makeatletter
|
|
\def\url@modernstyle{
|
|
\@ifundefined{selectfont}{\def\UrlFont{\sf}}{\def\UrlFont{}}}
|
|
\renewcommand\large{\@setfontsize\Large{11pt}{18}}
|
|
\makeatother
|
|
%\urlstyle{modern} %% And use the newly defined style.
|
|
|
|
\frenchspacing % Better looking spacings after periods
|
|
\pagestyle{empty} % No pagenumbers/headers/footers
|
|
|
|
\hypersetup{
|
|
pdfborder=0 0 0
|
|
}
|
|
|
|
\renewcommand{\familydefault}{\sfdefault}
|
|
\setlist[itemize]{leftmargin=*}
|
|
|
|
%%% Custom sectioning (sectsty package)
|
|
%%% ------------------------------------------------------------
|
|
\usepackage{sectsty}
|
|
|
|
\sectionfont{ % Change font of \section command
|
|
\vspace{-1mm}
|
|
\usefont{OT1}{phv}{b}{n}% % bch-b-n: CharterBT-Bold font
|
|
\sectionrule{0pt}{0pt}{-5pt}{1pt}}
|
|
|
|
%%% Macros
|
|
%%% ------------------------------------------------------------
|
|
\newlength{\spacebox}
|
|
\settowidth{\spacebox}{developer} % Box to align text
|
|
\newcommand{\sepspace}{\vspace*{1em}} % Vertical space macro
|
|
|
|
\newcommand{\MyName}[1]{ % Name
|
|
\Huge
|
|
\usefont{OT1}{phv}{b}{n}
|
|
\begin{center} #1 \end{center}
|
|
\par \normalsize \normalfont}
|
|
|
|
\newcommand{\CoopInfo}[1]{ % Slogan (optional)
|
|
\vspace{1.5mm}
|
|
\large \hfill #1
|
|
\par \normalsize \normalfont \vspace{-2mm}}
|
|
|
|
\newcommand{\NewPart}[1]{\vspace{-1mm}\section*{\large \uppercase{#1}}\vspace{-1mm}}
|
|
|
|
\newcommand{\SkillsEntry}[2]{
|
|
\noindent\baselineskip=14pt\hangindent=0em\hangafter=0 % Indentation
|
|
\makebox[1.75cm][l]{ % Box to align text
|
|
\bf{#1}} % Entry name (birth, address, etc.)
|
|
\hspace{2em} #2 \par} % Entry value
|
|
|
|
\newcommand{\AwardsEntry}[2]{
|
|
\noindent\hangindent=0em\hangafter=0 % Indentation
|
|
\parbox{\spacebox}{ % Box to align text
|
|
\textit{#1}} % Entry name (birth, address, etc.)
|
|
\hspace{2em} #2 \par} % Entry value
|
|
|
|
\newcommand{\EducationEntry}[4]{
|
|
\noindent \textbf{\large #1} \hfill % School
|
|
\smash{\colorbox{Black}{%
|
|
{%
|
|
\hfill\color{White}\strut ~#2~}}} \par % Duration
|
|
\vspace{0.5mm}
|
|
\noindent \textit{#3} \par % Degree
|
|
\noindent\hangindent=0em\hangafter=0 #4 % Description
|
|
\par}
|
|
|
|
\newcommand{\WorkEntry}[4]{ % Same as \EducationEntry
|
|
\noindent \textbf{\large#1} \hfill % Company
|
|
\smash{\colorbox{Black}{%
|
|
{%
|
|
\hfill\color{White}\strut ~#2~}}} \par % Duration
|
|
\vspace{0.5mm}
|
|
\noindent \textit{#3} \par % Job title
|
|
\noindent\hangindent=2em\hangafter=0 #4 % Description
|
|
\par}
|
|
|
|
\newcommand{\ProjectEntry}[4]{ % Similar to \EducationEntry
|
|
\noindent \textbf{\large #1} \noindent \textit{#3} \hfill {#2} \par
|
|
\vspace{0.5mm}
|
|
\noindent #4 % Description
|
|
\par}
|
|
|
|
\newcommand{\AwardEntry}[4]{ % Similar to \EducationEntry
|
|
\noindent \textbf{\large #1} \noindent \textit{#2}
|
|
\vspace{0.5mm}
|
|
\hfill \smash{\colorbox{Black}{%
|
|
{%
|
|
\hfill\color{White}\strut ~#3~}}} \par % Duration
|
|
\noindent #4 % Description
|
|
\par}
|
|
|
|
\begin{document}
|
|
|
|
\MyName{Naman Sood}
|
|
% remove co-op info for external jobs
|
|
%\CoopInfo{2A Computer Science | Student ID 2081{\kern 0.05em}3855}
|
|
\vspace{1.5mm}
|
|
{\hfill \href{mailto:mail@nsood.in}{mail@nsood.in} |
|
|
\href{https://www.nsood.in}{www.nsood.in} |
|
|
\href{tel:4372157822}{(437) 215-7822} |
|
|
\href{https://linkedin.com/in/namansood}{linkedin.com/in/namansood} |
|
|
\href{https://github.com/namansood}{github.com/namansood}
|
|
\hfill}
|
|
%%% Skills
|
|
%%% ------------------------------------------------------------
|
|
\NewPart{Skills}{}
|
|
\normalsize
|
|
\SkillsEntry{Languages}{JavaScript, Go, Rust, C++, C, Scala, HTML5, CSS3, Shell, Python, Racket, Haskell}
|
|
\SkillsEntry{Technologies}{Linux, Git, Docker, TCP/IP, AWS, gRPC, React, SQL, MongoDB, Firebase}
|
|
|
|
%%% Work experience
|
|
%%% ------------------------------------------------------------
|
|
\NewPart{Experience}{}
|
|
\normalsize
|
|
\iffalse
|
|
% long form description for job applications
|
|
Made Tailscale ready for the cloud, by creating features that allowed it
|
|
to run in lightweight, unprivileged container environments. This included
|
|
a virtual networking stack for connecting to the Tailscale network without
|
|
kernel privileges to create a network driver, a SOCKS5 proxy to allow
|
|
applications to communicate over this virtual networking stack, and ephemeral
|
|
authentication keys for stateless access to the Tailscale network. Also published
|
|
long-form technical content on company blog and contributed to product knowledge
|
|
base.
|
|
\fi
|
|
\WorkEntry
|
|
{Tailscale}
|
|
{Jan 2021 -- Apr 2021}
|
|
{Software Engineering Intern}
|
|
{\begin{itemize} \itemsep -1pt
|
|
\item Boosted compatibility with LXC containers by providing in-process TCP/IP and link-layer emulation, using Google gVisor.
|
|
\item Enabled simple, standard communication for programs over Tailscale network by creating a SOCKS5 proxy server in Go.
|
|
\item Simplified deployment of Tailscale in cloud environments by creating single-session authentication keys with auto-cleanup.
|
|
\item Secured continuous integration and deployment pipelines by creating GitHub Action to allow workflows to use Tailscale.
|
|
\item Expanded outreach with technical community by writing long-form content for knowledge base and corporate blog (\underline{\href{https://tailscale.com/blog/2021-05-github-actions-and-tailscale/}{link}}).
|
|
\end{itemize}}
|
|
\vspace{1mm}
|
|
\iffalse
|
|
% long form description for job applications
|
|
Accelerated research in the field of Byzantine fault tolerant distributed
|
|
computing, by implementing security features (like BLS signature verification),
|
|
streamlining build and deployment of project using Docker, and reducing
|
|
technical debt by standardizing use of external dependencies. Conducted
|
|
performance benchmarks on AWS and analyzed performance data using gnuplot
|
|
and Python.
|
|
\fi
|
|
\WorkEntry
|
|
{University of Waterloo}
|
|
{May 2020 -- Aug 2020}
|
|
{Research Associate, Sirius Blockchain Research Group}
|
|
{\begin{itemize} \itemsep -1pt
|
|
\item Hardened security by enforcing BLS signature verification for Byzantine fault tolerant distributed consensus system in Go.
|
|
\item Streamlined deployment of project, using Docker images to generate repeatable builds across diverse environments.
|
|
\item Unified similar codebases by migrating components to a single project to reduce code duplication, using C++.
|
|
\item Assisted distributed systems research by conducting experiments on AWS and analyzing performance data using gnuplot.
|
|
\end{itemize}}
|
|
\vspace{1mm}
|
|
\iffalse
|
|
% long form description for job applications
|
|
Designed and build native apps for professional photographers to deliver
|
|
photos to clients, using Electron and React Native, and created API to
|
|
preview uploaded photos in low-bandwidth situations, using Node.js and
|
|
AWS S3. Reduced technical debt in React Native project by combining similar
|
|
functionality into reusable components.
|
|
\fi
|
|
\WorkEntry
|
|
{Creesync Software}
|
|
{May 2019 -- Aug 2019}
|
|
{Software Engineering Intern}
|
|
{\begin{itemize} \itemsep -1pt
|
|
\item Simplified professional photography, by building native apps to deliver photos to clients, using Electron and React Native.
|
|
\item Designed and deployed API to upload and preview photos in low-bandwidth situations, using Node.js and AWS S3.
|
|
\item Reduced technical debt in React Native project by combining similar functionality into reusable components.
|
|
\end{itemize}}
|
|
\vspace{1mm}
|
|
\WorkEntry
|
|
{The Girl Code}
|
|
{Mar 2018 -- Apr 2020}
|
|
{Full Stack Developer}
|
|
{\begin{itemize} \itemsep -1pt
|
|
\item Empowered school children by creating online platform to learn Python programming, using Node.js and MongoDB.
|
|
\item Assisted research by tracking usage of learning platform to collect data for National University of Singapore study.
|
|
\end{itemize}}
|
|
|
|
%%% Projects
|
|
%%% ------------------------------------------------------------
|
|
\NewPart{Projects}{}
|
|
\normalsize
|
|
\ProjectEntry{\href{https://github.com/namansood/chip8-rust}{CHIP8-rust}}{}
|
|
{Rust}
|
|
{Emulator for CHIP-8 microprocessor. Simulated behavior of machine instructions with
|
|
Rust, created graphics in framebuffer.}
|
|
\vspace{2mm}
|
|
\ProjectEntry{\href{https://github.com/namansood/prose}{Prose}}{}
|
|
{Go}
|
|
{Markdown-powered blog. Developed custom HTTP server with hooks for web request logging, routing
|
|
and error handling.}
|
|
\vspace{2mm}
|
|
\ProjectEntry{\href{https://github.com/namansood/tsh}{Turtle Shell}}{}
|
|
{C, POSIX APIs}
|
|
{Shell for Unix operating systems in C. Learned memory management, process management,
|
|
and usage of POSIX interfaces. }
|
|
\vspace{2mm}
|
|
\ProjectEntry{\href{https://github.com/namansood/cmdmap}{cmdmap}}{}
|
|
{Node.js}
|
|
{Node module to map CLI programs to a JSON API. Designed abstraction over standard
|
|
library features for improved security.}
|
|
|
|
%%% Education
|
|
%%% ------------------------------------------------------------
|
|
\NewPart{Education}{}
|
|
\EducationEntry
|
|
{University of Waterloo}
|
|
{Sep 2019 -- Apr 2024}
|
|
{Candidate for Bachelor of Computer Science -- 94.5\%}
|
|
{\begin{itemize} \itemsep -1pt
|
|
\vspace{1mm}
|
|
\item {\bf Awards and Honors:} Received \$15,000 Computer Science Upper Year Scholarship, and placed on Dean's Honors List.
|
|
\item {\bf Mentor, StarterHacks 2020:} Provided technical and design advice in Canada's largest beginner-focused hackathon.
|
|
\item {\bf Editor, mathNEWS:} Provide news and recreation to student body via student publication of the Faculty of Mathematics.
|
|
\item {\bf Relevant Coursework:} Data Structures, Object-Oriented Prorgamming (C++), Functional Programming (Racket, Haskell)
|
|
\end{itemize}}
|
|
\
|
|
\end{document}
|