Initial commit

This commit is contained in:
Price Hiller 2023-09-13 06:14:01 -05:00
commit 68d023c8ae
4 changed files with 458 additions and 0 deletions

5
.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
*
!.gitignore
!developercv.cls
!fontawesome.pdf
!resume.tex

252
developercv.cls Normal file
View File

@ -0,0 +1,252 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Developer CV
% LaTeX Class
% Version 1.0 (28/1/19)
%
% This class originates from:
% http://www.LaTeXTemplates.com
%
% Authors:
% Jan Vorisek (jan@vorisek.me)
% Based on a template by Jan Küster (info@jankuester.com)
% Modified for LaTeX Templates by Vel (vel@LaTeXTemplates.com)
%
% License:
% The MIT License (see included LICENSE file)
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%----------------------------------------------------------------------------------------
% Colors
%----------------------------------------------------------------------------------------
\usepackage{pagecolor}
\definecolor{SumiInk0}{HTML}{16161D}
\definecolor{SumiInk1}{HTML}{181820}
\definecolor{SumiInk2}{HTML}{1a1a22}
\definecolor{SumiInk3}{HTML}{1F1F28}
\definecolor{SumiInk4}{HTML}{2A2A37}
\definecolor{SumiInk5}{HTML}{363646}
\definecolor{SumiInk6}{HTML}{54546D}
\definecolor{WaveBlue1}{HTML}{223249}
\definecolor{WaveBlue2}{HTML}{2D4F67}
\definecolor{WinterGreen}{HTML}{2B3328}
\definecolor{WinterYellow}{HTML}{49443C}
\definecolor{WinterRed}{HTML}{43242B}
\definecolor{WinterBlue}{HTML}{252535}
\definecolor{AutumnGreen}{HTML}{76946A}
\definecolor{AutumnRed}{HTML}{C34043}
\definecolor{AutumnYellow}{HTML}{DCA561}
\definecolor{SamuraiRed}{HTML}{E82424}
\definecolor{RoninYellow}{HTML}{FF9E3B}
\definecolor{WaveAqua1}{HTML}{6A9589}
\definecolor{DragonBlue}{HTML}{658594}
\definecolor{OldWhite}{HTML}{C8C093}
\definecolor{FujiWhite}{HTML}{DCD7BA}
\definecolor{FujiGray}{HTML}{727169}
\definecolor{OniViolet}{HTML}{957FB8}
\definecolor{OniViolet2}{HTML}{b8b4d0}
\definecolor{CrystalBlue}{HTML}{7E9CD8}
\definecolor{SpringViolet1}{HTML}{938AA9}
\definecolor{SpringViolet2}{HTML}{9CABCA}
\definecolor{SpringBlue}{HTML}{7FB4CA}
\definecolor{LightBlue}{HTML}{A3D4D5}
\definecolor{WaveAqua2}{HTML}{7AA89F}
\definecolor{SpringGreen}{HTML}{98BB6C}
\definecolor{BoatYellow1}{HTML}{938056}
\definecolor{BoatYellow2}{HTML}{C0A36E}
\definecolor{CarpYellow}{HTML}{E6C384}
\definecolor{SakuraPink}{HTML}{D27E99}
\definecolor{WaveRed}{HTML}{E46876}
\definecolor{PeachRed}{HTML}{FF5D62}
\definecolor{SurimiOrange}{HTML}{FFA066}
\definecolor{KatanaGray}{HTML}{717C7C}
%----------------------------------------------------------------------------------------
% CLASS CONFIGURATION
%----------------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{developercv}[2019/01/28 Developer CV class v1.0]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{extarticle}} % Pass through any options to the base class
\ProcessOptions\relax % Process given options
\LoadClass{extarticle} % Load the base class
%----------------------------------------------------------------------------------------
% PACKAGES AND OTHER DOCUMENT CONFIGURATIONS
%----------------------------------------------------------------------------------------
\setlength{\parindent}{0mm} % Suppress paragraph indentation
\usepackage[hidelinks]{hyperref} % Required for links but hide the default boxes around links
\newcommand{\lorem}{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus.} % Dummy text
\pagestyle{empty} % No headers or footers
\usepackage{moresize} % Provides more font size commands (\HUGE and \ssmall)
%----------------------------------------------------------------------------------------
% PAGE LAYOUT
%----------------------------------------------------------------------------------------
\usepackage{geometry} % Required for adjusting page dimensions and margins
\geometry{
paper=a4paper, % Paper size, change to letterpaper for US letter size
top=1.75cm, % Top margin
bottom=1.75cm, % Bottom margin
left=2cm, % Left margin
right=2cm, % Right margin
headheight=0.75cm, % Header height
footskip=1cm, % Space from the bottom margin to the baseline of the footer
headsep=0.5cm, % Space from the top margin to the baseline of the header
%showframe, % Uncomment to show how the type block is set on the page
}
%----------------------------------------------------------------------------------------
% FONTS
%----------------------------------------------------------------------------------------
\usepackage[utf8]{inputenc} % Required for inputting international characters
\usepackage[T1]{fontenc} % Output font encoding for international characters
\usepackage[default]{raleway}
%\usepackage[defaultsans]{droidsans}
%\usepackage{cmbright}
%\usepackage{fetamont}
%\usepackage[default]{gillius}
%\usepackage{roboto}
\renewcommand*\familydefault{\sfdefault} % Force the sans-serif version of any font used
%------------------------------------------------
\usepackage{fontawesome} % Required for FontAwesome icons
% Command to output an icon in a SumiInk5 square box with text to the right
\newcommand{\icon}[3]{% The first parameter is the FontAwesome icon name, the second is the box size and the third is the text
\vcenteredhbox{\colorbox{SumiInk5}{\makebox(#2, #2){\textcolor{FujiWhite}{\large\csname fa#1\endcsname}}}}% Icon and box
\hspace{0.2cm}% FujiWhitespace
\vcenteredhbox{\textcolor{FujiWhite}{#3}}% Text
}
%----------------------------------------------------------------------------------------
% GRAPHICS DEFINITIONS
%----------------------------------------------------------------------------------------
\usepackage{tikz} % Required for creating the plots
\usetikzlibrary{shapes, backgrounds}
\tikzset{x=1cm, y=1cm} % Default tikz units
% Command to vertically centre adjacent content
\newcommand{\vcenteredhbox}[1]{% The only parameter is for the content to centre
\begingroup%
\setbox0=\hbox{#1}\parbox{\wd0}{\box0}%
\endgroup%
}
%----------------------------------------------------------------------------------------
% CHARTS
%----------------------------------------------------------------------------------------
\newcounter{barcount}
% Environment to hold a new bar chart
\newenvironment{barchart}[1]{ % The only parameter is the maximum bar width, in cm
\newcommand{\barwidth}{0.35}
\newcommand{\barsep}{0.2}
% Command to add a bar to the bar chart
\newcommand{\baritem}[2]{ % The first argument is the bar label and the second is the percentage the current bar should take up of the total width
\pgfmathparse{##2}
\let\perc\pgfmathresult
\pgfmathparse{#1}
\let\barsize\pgfmathresult
\pgfmathparse{\barsize*##2/100}
\let\barone\pgfmathresult
\pgfmathparse{(\barwidth*\thebarcount)+(\barsep*\thebarcount)}
\let\barx\pgfmathresult
\filldraw[fill=SurimiOrange, draw=none] (0,-\barx) rectangle (\barone,-\barx-\barwidth);
\node [label=180:\colorbox{SumiInk5}{\textcolor{SurimiOrange}{##1}}] at (0,-\barx-0.175) {};
\addtocounter{barcount}{1}
}
\begin{tikzpicture}
\setcounter{barcount}{0}
}{
\end{tikzpicture}
}
%------------------------------------------------
\newcounter{a}
\newcounter{b}
\newcounter{c}
% Command to output a number of automatically-sized bubbles from a string in the format of '<size>/<label>', e.g. \bubbles{5/Eclipse, 6/git, 4/Office, 3/Inkscape, 3/Blender}
\newcommand{\bubbles}[1]{
% Reset counters
\setcounter{a}{0}
\setcounter{c}{150}
\begin{tikzpicture}[scale=3]
\foreach \p/\t in {#1} {
\addtocounter{a}{1}
\bubble{\thea/2}{\theb}{\p/25}{\t}{1\p0}
}
\end{tikzpicture}
}
% Command to output a bubble at a specific position with a specific size
\newcommand{\bubble}[5]{
\filldraw[fill=SumiInk5, draw=none] (#1,0.5) circle (#3); % Bubble
\node[label=\textcolor{SumiInk5}{#4}] at (#1,0.7) {}; % Label
}
%----------------------------------------------------------------------------------------
% CUSTOM SECTIONS
%----------------------------------------------------------------------------------------
% Command to output section title headings
\newcommand{\cvsect}[1]{% The only parameter is the section text
\vspace{\baselineskip} % FujiWhitespace before the section title
\colorbox{SumiInk5}{\textcolor{FujiWhite}{\MakeUppercase{\textbf{#1}}}}\\% Section title
}
%----------------------------------------------------------------------------------------
% ENTRY LIST
%----------------------------------------------------------------------------------------
\usepackage{longtable} % Required for tables that span multiple pages
\setlength{\LTpre}{0pt} % Remove default FujiWhitespace before longtable
\setlength{\LTpost}{0pt} % Remove default FujiWhitespace after longtable
\setlength{\tabcolsep}{0pt} % No spacing between table columns
% Environment to hold a new list of entries
\newenvironment{entrylist}{
\begin{longtable}[H]{l l}
}{
\end{longtable}
}
\newcommand{\entry}[4]{% First argument for the leftmost date(s) text, second is for the bold entry heading, third is for the bold right-aligned entry qualifier and the fourth is for the entry description
\parbox[t]{0.175\textwidth}{% 17.5% of the text width of the page
#1 % Leftmost entry date(s) text
}%
&\parbox[t]{0.825\textwidth}{% 82.5% of the text width of the page
\textbf{#2}% Entry heading text
\hfill% Horizontal FujiWhitespace
{\footnotesize \textbf{\textcolor{OldWhite}{#3}}}\\% Right-aligned entry qualifier text
#4 % Entry description text
}\\\\}
% Command to output a separator slash between lists, e.g. ' / '
\newcommand{\slashsep}{\hspace{3mm}/\hspace{3mm}}

BIN
fontawesome.pdf Normal file

Binary file not shown.

201
resume.tex Executable file
View File

@ -0,0 +1,201 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Developer CV
% LaTeX Template
% Version 1.0 (28/1/19)
%
% This template originates from:
% http://www.LaTeXTemplates.com
%
% Authors:
% Jan Vorisek (jan@vorisek.me) <- This guy is a chad, I modified some of this stuff quite heavily. Still, credit where
% it's due
% Based on a template by Jan Küster (info@jankuester.com)
% Modified for LaTeX Templates by Vel (vel@LaTeXTemplates.com)
%
% License:
% The MIT License
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%----------------------------------------------------------------------------------------
% PACKAGES AND OTHER DOCUMENT CONFIGURATIONS
%----------------------------------------------------------------------------------------
\documentclass[9pt]{developercv} % Default font size, values from 8-12pt are recommended
\pagecolor{SumiInk2}
\color{FujiWhite}
\usepackage{hyperref}
\hypersetup{
colorlinks=true,
urlcolor=SpringGreen,
}
%----------------------------------------------------------------------------------------
\begin{document}
%----------------------------------------------------------------------------------------
% TITLE AND CONTACT INFORMATION
%----------------------------------------------------------------------------------------
\begin{minipage}[t]{0.35\textwidth} % 45% of the page width for name
\vspace{-\baselineskip} % Required for vertically aligning minipages
% If your name is very short, use just one of the lines below
% If your name is very long, reduce the font size or make the minipage wider and reduce the others proportionately
\colorbox{SumiInk5}{{\HUGE{\textbf{\MakeUppercase{Price}}}}} % First name
\colorbox{SumiInk5}{{\HUGE{\textbf{\MakeUppercase{Hiller}}}}} % Last name
\vspace{6pt}
{\huge Vim God} % Career or current job title
\end{minipage}
\begin{minipage}[t]{0.3\textwidth} % 27.5% of the page width for the first row of icons
\vspace{-\baselineskip} % Required for vertically aligning minipages
% The first parameter is the FontAwesome icon name, the second is the box size and the third is the text
% Other icons can be found by referring to fontawesome.pdf (supplied with the template) and using the word after \fa in the command for the icon you want
\icon{MapMarker}{12}{San Antonio, Texas}\\
\icon{Phone}{12}{+1 210 571-4297}\\
\icon{At}{12}{\href{mailto:price@orion-technologies.io}{price@orion-technologies.io}}\\
\end{minipage}
\begin{minipage}[t]{0.3\textwidth} % 27.5% of the page width for the second row of icons
\vspace{-\baselineskip} % Required for vertically aligning minipages
% The first parameter is the FontAwesome icon name, the second is the box size and the third is the text
% Other icons can be found by referring to fontawesome.pdf (supplied with the template) and using the word after \fa in the command for the icon you want
\icon{Globe}{12}{\href{https://gitlab.orion-technologies.io/explore}{gitlab.orion-technologies.io/explore}}\\
\icon{Github}{12}{\href{https://github.com/treatybreaker}{github.com/treatybreaker}}\\
\icon{Gitlab}{12}{\href{https://gitlab.orion-technologies.io/philler}{gitlab.orion-technologies.io/philler}}
\end{minipage}
\vspace{0.1cm}
%----------------------------------------------------------------------------------------
% INTRODUCTION, SKILLS AND TECHNOLOGIES
%----------------------------------------------------------------------------------------
\cvsect{Who Am I?}
\begin{minipage}[t]{0.4\textwidth} % 40% of the page width for the introduction text
\vspace{-\baselineskip} % Required for vertically aligning minipages
I am a young programmer and Linux user who has an outsized level of pride in my Neovim configuration. Take a look
\href{https://gitlab.orion-technologies.io/philler/dots/-/tree/Development/dots/.config/nvim?ref_type=heads}{here}, it
is deployed via Ansible over \href{https://gitlab.orion-technologies.io/ansible/dot-files}{yonder}. I currently write
most of my code in Lua for configurations and Rust for actual full on programming. I am highly invested in
reproducibility, expressed via Docker and Ansible (and lately some Nix). I currently use Arch Linux (btw) as my
operating system and live almost entirely on the command line. This resume, for instance, was written in vim and
compiled with Tectonic.\\
\end{minipage}
\hfill % Whitespace between
\begin{minipage}[t]{0.5\textwidth} % 50% of the page for the skills bar chart
\vspace{-\baselineskip} % Required for vertically aligning minipages
\begin{barchart}{5.5}
\baritem{Ansible}{90}
\baritem{Rust}{70}
\baritem{Lua}{100}
\baritem{Git}{80}
\baritem{CI/CD}{90}
\baritem{Linux}{70}
\baritem{Python}{50}
\baritem{Docker}{60}
\end{barchart}
\end{minipage}
%----------------------------------------------------------------------------------------
% EXPERIENCE
%----------------------------------------------------------------------------------------
\cvsect{Experience}
\begin{entrylist}
\entry
{2022 - 2023\\\footnotesize{part time}}
{Systems Integration Intern}
{Security Service Federal Credit Union}
{I was primarily involved with pipelines and overhauling legacy projects. I overhauled the in-use pipelines to
"Pipelines V3" with significant modularity improvements and major performance gains. The average speedup was 8x,
with the highest speed up being 20x. These pipelines were responsible for testing, building, and deploying code at
SSFCU. \\ \texttt{C\#}\slashsep\texttt{Powershell}\slashsep\texttt{Azure/Github
CI/CD}\slashsep\texttt{Bash}\slashsep\texttt{Docker}\slashsep\texttt{Windows Server}}
\entry
{2021 -- 2022\\\footnotesize{part time}}
{Junior Systems Administrator}
{Vircio}
{I introduced Ansible automation as part of a project to leave the legacy CFEngine automation platform behind. I
created Ansible playbooks that managed approximately 800 hosts in various customer locations along with implementing
Gitlab CI/CI to lint and run these playbooks on git integration. All systems were Linux based that I automated and
worked on.\\
\texttt{Linux}\slashsep\texttt{Bash}\slashsep\texttt{Ansible}\slashsep\texttt{CFEngine}\slashsep\texttt{Networking}\slashsep\texttt{Bind9}\slashsep\texttt{Gitlab
CI/CD}}
\entry
{2019 - 2020\\\footnotesize{part time}}
{Information Analyst II Intern}
{Booz Allen Hamilton}
{I was on a team doing machine learning work. I helped with applying the target dataset we used, filtering, and
gathering of data for the machine learning system in Python.\\ \texttt{Python}\slashsep\texttt{Linux}\slashsep\texttt{Elastic
Search}\slashsep\texttt{Kibana}\slashsep\texttt{Logstash}\slashsep\texttt{Bash}}
\end{entrylist}
%----------------------------------------------------------------------------------------
% EDUCATION
%----------------------------------------------------------------------------------------
\cvsect{Education}
\begin{entrylist}
\entry
{2024 -- FUTURE}
{Finishing Bachelor's Degree}
{University of Texas at San Antonio}
{After my current semester at San Antonio College I intend to go back to UTSA and get my full bachelor's in business
with a cybersecurity specialization starting spring of 2024.}
\entry
{2021 - PRESENT}
{Associates in Business}
{San Antonio College}
{I came to SAC to get my prerequisite courses finished and have qualified for an associates degree in business which I
will receive fall of 2023.}
\entry
{2019 -- 2021}
{Seeking Bachelor's Degree in Business}
{University of Texas at San Antonio}
{I began on my path to getting a Bachelor's Business degree with a specialization in Cybersecurity in fall of 2019. I
left in 2021 to San Antonio Colleges to finish out prerequisite courses and get my associates degree.}
\end{entrylist}
%----------------------------------------------------------------------------------------
% ADDITIONAL INFORMATION
%----------------------------------------------------------------------------------------
\begin{minipage}[t]{0.45\textwidth}
\vspace{-\baselineskip} % Required for vertically aligning minipages
\cvsect{Projects}
\textbf{\href{https://github.com/AsgardEternal}{Squad Server Automation}}\\Squad Server Deployments
and Management\\
\textbf{\href{https://gitlab.orion-technologies.io/blog/blog}{Blog Static Site Generator}}\\Rust Code Powering a Blog\\
\textbf{\href{https://pypi.org/project/avents/}{Avents}}\\Python Asynchronous Event Framework
\end{minipage}
\hfill
\begin{minipage}[t]{0.6\textwidth}
\vspace{-\baselineskip} % Required for vertically aligning minipages
\cvsect{Some Code I've Written}
- {\href{https://github.com/NeogitOrg/neogit/pull/616}{Test Overhauls For Neogit}}\\
- {\href{https://github.com/neovim/neovim/pull/23925}{Injecting Cmake Variable into Neovim}}\\
- {\href{https://github.com/krivahtoo/silicon.nvim/pull/28}{Modifying ABI Call in Silicon.nvim}}\\
- {\href{https://github.com/neovim/nvim-lspconfig/pull/2493}{Adding the Azure Pipelines Language Server to Nvim-Lspconfig}}\\
- {\href{https://github.com/pfeiferj/nvim-hurl/pull/4}{Enabling Better User Configuration for Hurl}}\\
-
{\href{https://gitlab.orion-technologies.io/philler/bash-scripts/-/blob/Development/Misc/Templater.bash?ref_type=heads}{A
Templating System Written in 100\% Pure Bash}}
\end{minipage}
%----------------------------------------------------------------------------------------
\end{document}