%-------------------------
% Resume in Latex
%------------------------

\documentclass[letterpaper,11pt]{article}

\usepackage{latexsym}
\usepackage[empty]{fullpage}
\usepackage{titlesec}
\usepackage{marvosym}
\usepackage[usenames,dvipsnames]{color}
\usepackage{verbatim}
\usepackage{enumitem}
\usepackage[pdftex]{hyperref}
\usepackage{fancyhdr}


\pagestyle{fancy}
\fancyhf{} % clear all header and footer fields
\fancyfoot{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}

% Adjust margins
\addtolength{\oddsidemargin}{-0.375in}
\addtolength{\evensidemargin}{-0.375in}
\addtolength{\textwidth}{1in}
\addtolength{\topmargin}{-.5in}
\addtolength{\textheight}{1.0in}

\urlstyle{same}

\raggedbottom
\raggedright
\setlength{\tabcolsep}{0in}

% Sections formatting
\titleformat{\section}{
  \vspace{-4pt}\scshape\raggedright\large
}{}{0em}{}[\color{black}\titlerule \vspace{-5pt}]

%-------------------------
% Custom commands
\newcommand{\resumeItem}[2]{
  \item\small{
    \textbf{#1}{: #2 \vspace{-2pt}}
  }
}

\newcommand{\resumeSubheading}[4]{
  \vspace{-1pt}\item
    \begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
      \textbf{#1} & #2 \\
      \textit{\small#3} & \textit{\small #4} \\
    \end{tabular*}\vspace{-5pt}
}

\newcommand{\resumeSubItem}[2]{\resumeItem{#1}{#2}\vspace{-4pt}}

\renewcommand{\labelitemii}{$\circ$}

\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=*]}
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}}
\newcommand{\resumeItemListStart}{\begin{itemize}}
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}}

%-------------------------------------------
%%%%%%  CV STARTS HERE  %%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{document}

%----------HEADING-----------------
\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}r}
  \textbf{\href{http://chunli.me}{\Large Chun Li}} & Email : \href{mailto:chunli.developer@gmail.com}{chunli.developer@gmail.com}\\
  \href{https://chunli.me}{https://chunli.me} & Mobile : (226) 606-6614 \\
\end{tabular*}


%-----------EXPERIENCE-----------------
\section{Experience}
  \resumeSubHeadingListStart
    \resumeSubheading
      {BiblioCommons}{Toronto, ON}
      {Jr. Platform Engineer}{Jun 2017 - Aug 2018}
      \resumeItemListStart
        \item {Developed on-boarding scripts to setup environment for new hires, drastically improving overall on-boarding time from a few days to half a day.}
        \item {Automated various manual processes for librarians such as SSL certificate updates and server restarts using shell languages such as Bash and PowerShell.}
        \item {Maintained and enhanced backend Java services to support new features for public libraries, such as fine payments. Worked with technologies such as Spring for DI and Ruby on Rails.}
      \resumeItemListEnd
    \resumeSubheading
      {Yext}{New York, NY}
      {Software Engineer Intern}{May - Aug 2015}
      \resumeItemListStart
        \item {Wrote scripts to migrate billing information from an internal system to a third-party (Zuora).}
        \item {Helped maintain internal software responsible for billing and subscription services.}
      \resumeItemListEnd
    \resumeSubheading
      {Reflektion}{San Mateo, CA}
      {Backend Engineer Intern}{Sep - Dec 2014}
      \resumeItemListStart
        \item {Built a software pipeline to process large amounts of data, providing real-time analytics.}
        \item {Utilized distributed systems such as Storm, Kafka, and Cassandra.}
        \item {Worked with NoSQL databases such as MongoDB and Redis.}
      \resumeItemListEnd
    \resumeSubheading
      {Yext}{New York, NY}
      {Software Engineer Intern}{Jan - Apr 2014}
      \resumeItemListStart
        \item {Developed Pages, an enterprise software solution for creating dynamic web pages.}
        \item {Utilized Go with the Martini web framework, as well as modern web developer tools such as html templates, jQuery and Sass.}
      \resumeItemListEnd
    \resumeSubheading
      {N8 Identity}{Burlington, ON}
      {Java Engineer Intern}{Apr - Aug 2013}
      \resumeItemListStart
        \item {Developed enterprise software using Java technologies such as Spring.}
        \item {Developed frontend web component using JSF.}
      \resumeItemListEnd
  \resumeSubHeadingListEnd


%-----------PROJECTS-----------------
\section{Projects}
  \resumeSubHeadingListStart
    \resumeSubItem{Personal Website}
      {Setup a server with Nginx to serve a private git server, a Flask app, and a personal blog. Learned basic usage of tools like systemd and git hooks to automatically deploy on push.}
    \resumeSubItem{Conway's Game of Life}
      {Implemented Conway's Game of Life using Javascript and HTML Canvas.}
  \resumeSubHeadingListEnd


%-----------EDUCATION-----------------
\section{Education}
  \resumeSubHeadingListStart
    \resumeSubheading
      {Recurse Center}{New York, NY}
      {Participant}{Sept - Dec 2018}
      \resumeItemListStart
        \item {Explored functional programming and lambda calculus, mainly by reading ``\textit{Structure and Interpretation of Computer Programs}" and completing exercises in Racket.}
        \item {Took Stanford's Algorithms 2 class online, learning about various topics such as greedy and dynamic programming algorithms.}
      \resumeItemListEnd
    \resumeSubheading
      {University of Waterloo}{Waterloo, Canada}
      {Bachelor of Computer Science}{2012 - 2017}
  \resumeSubHeadingListEnd

%
%--------PROGRAMMING SKILLS------------
\iffalse \section{Programming Skills}
  \resumeSubHeadingListStart
    \item{
      \textbf{Languages}{: Java, JavaScript, Python, SQL}
      \hfill
      \textbf{Tools}{: Spring, vim, git, bash}
    }
  \resumeSubHeadingListEnd
\fi

%-------------------------------------------
\end{document}
