6266c5d32f
Rename my //users directory and all places that refer to glittershark to grfn, including nix references and documentation. This may require some extra attention inside of gerrit's database after it lands to allow me to actually push things. Change-Id: I4728b7ec2c60024392c1c1fa6e0d4a59b3e266fa Reviewed-on: https://cl.tvl.fyi/c/depot/+/2933 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: glittershark <grfn@gws.fyi>
212 lines
9.8 KiB
TeX
212 lines
9.8 KiB
TeX
%% start of file `template.tex'.
|
|
%% Copyright 2006-2013 Xavier Danaux (xdanaux@gmail.com).
|
|
%% Copyright 2014-2020 Griffin Smith (wildgriffin45@gmail.com).
|
|
%
|
|
% This work may be distributed and/or modified under the
|
|
% conditions of the LaTeX Project Public License version 1.3c,
|
|
% available at http://www.latex-project.org/lppl/.
|
|
|
|
|
|
\documentclass[10pt,a4paper,sans]{moderncv} % possible options include font size ('10pt', '11pt' and '12pt'), paper size ('a4paper', 'letterpaper', 'a5paper', 'legalpaper', 'executivepaper' and 'landscape') and font family ('sans' and 'roman')
|
|
|
|
\usepackage[inline]{enumitem}
|
|
|
|
|
|
% moderncv themes
|
|
% style options are 'casual' (default), 'classic', 'oldstyle' and 'banking'
|
|
\moderncvstyle{casual}
|
|
% color options 'blue' (default), 'orange', 'green', 'red', 'purple', 'grey' and 'black'
|
|
\moderncvcolor{black}
|
|
% to set the default font; use '\sfdefault' for the default sans serif font,
|
|
% '\rmdefault' for the default roman one, or any tex font name
|
|
%\renewcommand{\familydefault}{\sfdefault}
|
|
\nopagenumbers{}
|
|
|
|
\usepackage[utf8]{inputenc}
|
|
|
|
\usepackage[scale=0.8, margin=0.65in]{geometry}
|
|
\setlength{\hintscolumnwidth}{2.6cm}
|
|
|
|
\name{Griffin}{Smith}
|
|
\title{Software Engineer}
|
|
\phone[mobile]{(720) 206-7218}
|
|
\email{grfn@gws.fyi}
|
|
\homepage{https://www.gws.fyi}
|
|
\extrainfo{References available upon request}
|
|
|
|
\begin{document}
|
|
\makecvtitle{}
|
|
\section{Skills}
|
|
\cvitem{Clojure}{Extensive experience architecting, deploying, and building
|
|
complex web applications in Clojure and Clojurescript, with a focus on
|
|
Re-Frame and Reagent.}
|
|
\cvitem{Haskell}{Passionate love for pure functional programming as a hobbyist
|
|
pursuit, but also practical experience building production systems in Haskell at
|
|
scale, and using Haskell's advanced type system extensions where appropriate to
|
|
deliver increased ergonomics and safety.}
|
|
\cvitem{Nix}{Experience with adopting and teaching nix at scale in a production
|
|
stack both for local development dependencies and for configuring and building
|
|
production software. Core contributer to a fork of the nix implementation itself
|
|
(tvix) aimed at providing increased safety, performance, and flexibility.}
|
|
\cvitem{Scala}{Understanding of Scala from the perspective of a functional
|
|
programmer rather than a Java programmer. Experience building production
|
|
big-data processing systems using Akka, and deep programming with Scala's type
|
|
system using Shapeless.}
|
|
\cvitem{Unix/Linux}{Experience with administrating highly available distributed
|
|
systems. Passion for the Unix philosophy of discrete, composable units of
|
|
functionality.}
|
|
\cvitem{Ruby}{Experience building both full-stack applications with Ruby on
|
|
Rails in addition to smaller microservices and custom frameworks. Deep
|
|
understanding of the internals of the Ruby interpreter and object system.}
|
|
\cvitem{Javascript}{Experience developing real-time responsive single-page web
|
|
applications using React, in addition to significant contributions to the React
|
|
open-source community.}
|
|
\cvitem{SQL}{Deep understanding of relational databases, including experience
|
|
designing the database schema in Postgres for an application with over a decade
|
|
of usage, hundreds of gigabytes of data, complex, multi-tiered hierarchical data
|
|
structures, as well as experience writing and optimizing large, complex queries
|
|
against that database.}
|
|
|
|
\subsection{Additional Tools}
|
|
\cvitem{}{\footnotesize
|
|
\begin{itemize*}
|
|
\item Vim
|
|
\item Kubernetes
|
|
\item Git
|
|
\item Puppet
|
|
\item AWS
|
|
\item Reagent
|
|
\item Datomic
|
|
\item Elasticsearch
|
|
\item Redis
|
|
\item DynamoDB
|
|
\item Docker
|
|
\item JIRA
|
|
\item Java
|
|
\item QuickCheck (and similar tools)
|
|
\item Python
|
|
\item Elixir
|
|
\end{itemize*}
|
|
\newline
|
|
\textbf{Novice Level:}
|
|
\begin{itemize*}
|
|
\item Rust
|
|
\item C++
|
|
\item Erlang
|
|
\item Prolog
|
|
\item Idris
|
|
\item Agda
|
|
\item Tensorflow
|
|
\end{itemize*}}
|
|
|
|
\section{Experience}
|
|
\subsection{Employment}
|
|
\cventry{2019-present}{Engineering Manager}{Urbint}{New York, NY}{}
|
|
{\begin{itemize}
|
|
\item Lead of the platform team with two direct reports - a senior SRE and
|
|
a senior software engineer.
|
|
\item Performed user research on developers, project managers, product
|
|
managers, and other internal stakeholders to build the roadmap for the
|
|
platform team.
|
|
\item Built and maintained a system to deploy one-off full stack
|
|
application instances from pull requests to enable easier testing.
|
|
\item Led a large, multi-project migration between CI systems that resulted
|
|
in a decrease of average build times from 2 hours to less than 10 minutes.
|
|
\item Maintained and extended Nix-based build and development
|
|
infrastructure for both software engineers and machine learning engineers.
|
|
\end{itemize}}
|
|
\cventry{2018--2019}{Senior Software Engineer}{Urbint}{New York, NY}{}
|
|
{\begin{itemize}
|
|
\item Built, trained, and maintained a large, deep-learning-based
|
|
image-detection model for semi-automated (human-in-the-loop) video
|
|
classification.
|
|
\item Designed, built, and maintained a novel in-house tool for collection of
|
|
training data.
|
|
\item Maintained and guaranteed reliability of a large data pipeline for
|
|
video processing and classification.
|
|
\end{itemize}}
|
|
\cventry{2017--2018}{Senior Software Engineer}{Urbint}{New York, NY}{}
|
|
{\begin{itemize}
|
|
\item Integral in the architecture of a novel, serializable ACID
|
|
transactional graph database built on RocksDB, first in Elixir then in
|
|
Haskell.
|
|
\item Helped ship customer deliverables involving multi-day data
|
|
processing jobs for disparate data sources.
|
|
\item Instructed other developers in the use of and theory behind Haskell
|
|
\item Brought computational graph theory to bear on the problem of unifying
|
|
disparate, highly heterogeneous data sources across the world of open data.
|
|
\end{itemize}}
|
|
\cventry{2016--2017}{Senior Software Engineer}{SecurityScorecard, Inc.}{New York, NY}{}
|
|
{Lead frontend developer for a rapidly-moving and growing security software startup.
|
|
\begin{itemize}
|
|
\item Took part in collaborative product design meetings to make UX
|
|
tradeoffs with product designers and managers.
|
|
\item Drove application architecture for a large, complex, data-driven frontend
|
|
application.
|
|
\item Championed increased use of production monitoring and alerting.
|
|
\item Worked with business stakeholders to set long- and short-term priorities for
|
|
application development.
|
|
\item Mentored junior team members.
|
|
\end{itemize}}
|
|
\cventry{2015--2016}{Lead Developer}{Nomi, Inc.}{New York, NY}{}
|
|
{Lead web services developer transitioning to a full-stack role implementing
|
|
shared software components and architecting a large, complex microservices
|
|
application ingesting hundreds of gigabytes of IoT data per week.
|
|
\begin{itemize}
|
|
\item Lead application architecture of the majority of the backend services to
|
|
encourage consistent REST API design and code sharing.
|
|
\item Championed the use of Haskell for rapid, safe development of the API Gateway
|
|
service.
|
|
\item Took ownership of operations and server maintenance of a >100-instance AWS
|
|
account using Puppet.
|
|
\end{itemize}}
|
|
\cventry{2014--2015}{Lead Developer}{LandlordsNY, LLC}{New York, NY}{}
|
|
{Sole engineer for a small startup connecting landlords and property managers and
|
|
facilitating the online sharing of information in a historically technology-averse
|
|
industry.
|
|
\begin{itemize}
|
|
\item Drove product design, visual design, and UX architecture for a major revamping
|
|
of the core product.
|
|
\item Interfaced with customers to set priorities for new feature development.
|
|
\item Conducted hiring and recruiting to build out an engineering team.
|
|
\end{itemize}}
|
|
\cventry{2012--2014}{Associate Developer}{Visionlink Inc.}{Boulder, CO}{}
|
|
{Integral member of an agile development team building the nation's most-used Information
|
|
and Referral platform for organizations such as United Way Worldwide and the American Red
|
|
Cross.
|
|
\begin{itemize}
|
|
\item Refactored and revamped legacy code to increase performance and long-term
|
|
maintainablity.
|
|
\item Worked on several triage-teams to rapidly fix production bugs with strict deadlines.
|
|
\item Built a complex, yet highly-performant tool for searching human services by category.
|
|
\item Acted as a core designer and developer of a major product revamp.
|
|
\begin{itemize}
|
|
\item Drove a complete rethinking of the data model in the product, leading to greater
|
|
unification, simplicity, and consistency;
|
|
\item Championed the adoption of a test-driven-development model;
|
|
\item Drove product documentation and code standardization.
|
|
\end{itemize}
|
|
\end{itemize}}
|
|
|
|
\section{Project Highlights}
|
|
\newcommand{\project}[3]{\item \textbf{#1} -- \textit{#2}\newline{}#3}
|
|
\cvitem{}{\begin{itemize}
|
|
\project{Github Bug Bounty}{https://bounty.github.com/researchers/glittershark.html}{
|
|
Discovered and responsibly disclosed a persistent XSS on Github's main
|
|
website}
|
|
\project{Tvix}{https://cs.tvl.fyi/depot/-/blob/third\_party/nix/README.md}{
|
|
Fork of the Nix build tool delivering increased reliability, code
|
|
quality, and pluggability}
|
|
\project{Panettone}{https://cs.tvl.fyi/depot/-/tree/web/panettone}{
|
|
Aggressively simple bug-tracker developed in Common Lisp for the community
|
|
involved in the development of Tvix. Hosted at https://b.tvl.fyi}
|
|
\project{Org-Clubhouse}{https://github.com/glittershark/org-clubhouse}{
|
|
Emacs library for integration between org-mode and the Clubhouse issue
|
|
tracker}
|
|
\project{core-async-storage}{https://github.com/glittershark/core-async-storage}{
|
|
Simple Clojurescript wrapper around React Native's AsyncStorage using
|
|
core.async}
|
|
\end{itemize}}
|
|
|
|
\end{document}
|
|
% vim: set tw=95 colorcolumn=-1:
|