mirror of
https://github.com/soconnor0919/resume-cv.git
synced 2025-12-15 07:24:43 -05:00
Compare commits
5 Commits
latest
...
release-22
| Author | SHA1 | Date | |
|---|---|---|---|
| 55afdad907 | |||
| 7840d7f286 | |||
| ad1fdb2dfc | |||
| 1edc20193c | |||
| 2c04a329c8 |
28
.github/workflows/compile-latex.yml
vendored
28
.github/workflows/compile-latex.yml
vendored
@@ -60,14 +60,6 @@ jobs:
|
||||
cv.tex
|
||||
latexmk_use_xelatex: false
|
||||
|
||||
- name: Delete existing tag
|
||||
continue-on-error: true
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
git tag -d latest || true
|
||||
git push origin :refs/tags/latest || true
|
||||
|
||||
- name: Upload Public PDFs as Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
@@ -78,6 +70,26 @@ jobs:
|
||||
tag_name: latest
|
||||
body: |
|
||||
Latest version of resume and CV (public version)
|
||||
|
||||
This release is automatically updated with each push to main. For versioned releases, see the numbered releases.
|
||||
prerelease: false
|
||||
draft: false
|
||||
fail_on_unmatched_files: true
|
||||
generate_release_notes: false
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
# Create a numbered release for version history
|
||||
- name: Create Numbered Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
files: |
|
||||
resume.pdf
|
||||
cv.pdf
|
||||
name: Release ${{ github.run_number }}
|
||||
tag_name: release-${{ github.run_number }}
|
||||
body: |
|
||||
Version ${{ github.run_number }} of resume and CV (public version)
|
||||
prerelease: false
|
||||
draft: false
|
||||
fail_on_unmatched_files: true
|
||||
|
||||
120
README.md
120
README.md
@@ -1,77 +1,73 @@
|
||||
# LaTeX Resume and CV Template
|
||||
# Resume & CV Generator
|
||||
|
||||
This repository contains a LaTeX template for creating both a resume and an extended CV. The template is designed to handle both public and private versions of your documents, making it perfect for sharing on GitHub while keeping sensitive information private.
|
||||
A LaTeX-based resume and CV generator with automated builds for both public and private versions. This repository serves two purposes:
|
||||
1. An actively maintained resume/CV using modern CI/CD practices
|
||||
2. A template that anyone can fork and customize for their own use
|
||||
|
||||
## Features
|
||||
## Overview
|
||||
|
||||
- Clean, professional LaTeX template for both resume and CV
|
||||
- Handles sensitive information securely using GitHub Secrets
|
||||
- Automated PDF generation using GitHub Actions
|
||||
- BibTeX integration for publications
|
||||
- Public and private versions of documents
|
||||
This project demonstrates professional DevOps practices while providing a beautiful LaTeX resume:
|
||||
- Automated builds via GitHub Actions for continuous deployment
|
||||
- Secure handling of sensitive information through environment variables
|
||||
- Containerized local development with Docker
|
||||
- Clean separation of content and styling
|
||||
|
||||
## Setup
|
||||
## Latest PDFs
|
||||
|
||||
1. Fork this repository
|
||||
2. For public use:
|
||||
- The default `personal_info.tex` will be used with placeholder information
|
||||
- Customize by editing `personal_info.tex` with your public information
|
||||
3. For private use:
|
||||
- Copy `personal_info_template.tex` to `personal_info_private.tex`
|
||||
- Fill in your private information in `personal_info_private.tex`
|
||||
- Add your sensitive information as GitHub Secrets (see below)
|
||||
The most recent public versions are always available at:
|
||||
- Resume: `https://github.com/USERNAME/resume-cv/releases/download/latest/resume.pdf`
|
||||
- CV: `https://github.com/USERNAME/resume-cv/releases/download/latest/cv.pdf`
|
||||
|
||||
## GitHub Secrets
|
||||
Replace `USERNAME` with your GitHub username after forking.
|
||||
|
||||
To handle sensitive information in GitHub Actions, add these secrets to your repository:
|
||||
- `PERSONAL_EMAIL`: Your primary email address
|
||||
- `PERSONAL_PHONE`: Your phone number
|
||||
- `PERSONAL_SCHOOL_EMAIL`: Your school email address
|
||||
- `PERSONAL_HOME_ADDRESS`: Your home address (multi-line)
|
||||
- `PERSONAL_SCHOOL_ADDRESS`: Your school address (multi-line)
|
||||
|
||||
## Local Development
|
||||
|
||||
1. Clone the repository
|
||||
2. For public version:
|
||||
- Use the existing `personal_info.tex`
|
||||
3. For private version:
|
||||
- Create `personal_info_private.tex` from the template
|
||||
- Add your private information
|
||||
4. Compile using:
|
||||
```bash
|
||||
# For initial compilation
|
||||
pdflatex document.tex
|
||||
|
||||
# If you have bibliography
|
||||
bibtex document
|
||||
|
||||
# Run twice more for references
|
||||
pdflatex document.tex
|
||||
pdflatex document.tex
|
||||
```
|
||||
Replace `document.tex` with either `cv.tex` or `resume.tex`
|
||||
|
||||
## GitHub Actions
|
||||
|
||||
The workflow automatically:
|
||||
- Builds public versions of both resume and CV on every push
|
||||
- Creates private versions if you're the repository owner
|
||||
- Uploads both versions as artifacts
|
||||
|
||||
## Directory Structure
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
.
|
||||
├── cv.tex # Extended CV template
|
||||
├── resume.tex # Resume template
|
||||
├── personal_info.tex # Public information (committed)
|
||||
├── personal_info_template.tex # Template for private info
|
||||
├── personal_info_private.tex # Private information (git-ignored)
|
||||
├── cv.tex # Extended CV template
|
||||
├── resume.tex # Resume template (subset of CV)
|
||||
├── shared/ # Shared components
|
||||
│ ├── style/ # Common LaTeX styles
|
||||
│ │ └── common.tex # Shared style definitions
|
||||
│ └── sections/ # Shared content sections
|
||||
│ ├── header.tex # Contact information
|
||||
│ ├── education.tex
|
||||
│ ├── skills.tex
|
||||
│ ├── coursework.tex
|
||||
│ └── publications.tex
|
||||
├── .secrets # Personal information (git-ignored)
|
||||
├── build-local.sh # Local build script
|
||||
└── subfiles/
|
||||
└── refs.bib # BibTeX references
|
||||
└── refs.bib # BibTeX references
|
||||
```
|
||||
|
||||
## Using as a Template
|
||||
|
||||
1. Fork this repository
|
||||
2. Copy `.secrets-template` to `.secrets` and fill in your personal information
|
||||
3. Run `./build-local.sh` to generate both public and private versions
|
||||
- Public version omits sensitive information like phone and address
|
||||
- Private version includes all personal details from `.secrets`
|
||||
- The script automatically generates and cleans up temporary files
|
||||
|
||||
## Modifying Content
|
||||
|
||||
The project uses a modular structure to avoid duplication:
|
||||
- Common sections are stored in `shared/sections/`
|
||||
- Styling is defined in `shared/style/common.tex`
|
||||
- The resume is a subset of the CV, reusing shared components
|
||||
- Add new sections by creating files in `shared/sections/` and including them with `\input{}`
|
||||
|
||||
## CI/CD Pipeline
|
||||
|
||||
The repository showcases modern DevOps practices through GitHub Actions:
|
||||
- Automated PDF generation on every push
|
||||
- Public version published as GitHub release with stable URLs
|
||||
- Private version securely generated for repository owner
|
||||
- Environment variables managed through GitHub Secrets
|
||||
|
||||
You can see these practices in action by checking the [Actions tab](../../actions) and [Releases](../../releases).
|
||||
|
||||
## License
|
||||
|
||||
This template is available under the MIT License. Feel free to use and modify it for your own needs.
|
||||
This template is available under the MIT License. Feel free to fork and customize it for your own needs.
|
||||
@@ -21,7 +21,7 @@ PERSONAL_SCHOOL_ADDRESS_LINE3=${PERSONAL_SCHOOL_ADDRESS_LINE3:-""}
|
||||
|
||||
# Function to cleanup
|
||||
cleanup() {
|
||||
rm -f *.aux *.log *.out *.fls *.fdb_latexmk *.synctex.gz *.bbl *.blg
|
||||
rm -f *.aux *.log *.out *.fls *.fdb_latexmk *.synctex.gz *.bbl *.blg personal_info.tex
|
||||
if [ -f personal_info.tex.bak ]; then
|
||||
mv personal_info.tex.bak personal_info.tex
|
||||
fi
|
||||
|
||||
111
cv.tex
111
cv.tex
@@ -1,78 +1,15 @@
|
||||
\documentclass{article}
|
||||
\setlength{\parindent}{0pt}
|
||||
\setlength{\parskip}{0em}
|
||||
\usepackage{enumitem}
|
||||
\usepackage{hyperref}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage[left=0.5in,top=0.5in,right=0.5in,bottom=0.5in]{geometry}
|
||||
|
||||
% Define spacing variables
|
||||
\newlength{\sectspaceabove}
|
||||
\newlength{\sectspacebelow}
|
||||
\setlength{\sectspaceabove}{-0em} % Space before section titles
|
||||
\setlength{\sectspacebelow}{-0.5em} % Space after section titles
|
||||
|
||||
\usepackage{etoolbox}
|
||||
\patchcmd{\thebibliography}{\section*{\refname}}{}{}{}
|
||||
|
||||
% Hide page numbers
|
||||
\pagestyle{empty}
|
||||
|
||||
% Custom macro for small caps and bold
|
||||
\newcommand{\textscbf}[1]{\textbf{\textsc{#1}}}
|
||||
|
||||
% Custom macro for section headers with controlled spacing
|
||||
\newcommand{\resumesection}[1]{%
|
||||
\vspace{\sectspaceabove}%
|
||||
\begin{center}
|
||||
\textscbf{#1}
|
||||
\end{center}%
|
||||
\vspace{\sectspacebelow}%
|
||||
}
|
||||
% Include common style
|
||||
\input{shared/style/common}
|
||||
|
||||
% Include personal information
|
||||
\input{personal_info}
|
||||
|
||||
\begin{document}
|
||||
\begin{center}
|
||||
{\large \textscbf{\personalName}}
|
||||
\end{center}
|
||||
|
||||
\vspace{0.5em}
|
||||
|
||||
\noindent
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\raggedright
|
||||
\ifx\personalSchoolAddressLineOne\empty\else
|
||||
\mbox{}\par\nobreak\vspace{-\baselineskip}
|
||||
\personalSchoolAddressLineOne\\%
|
||||
\personalSchoolAddressLineTwo\\%
|
||||
\personalSchoolAddressLineThree%
|
||||
\fi
|
||||
\end{minipage}%
|
||||
\hfill%
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\centering
|
||||
\href{mailto:\personalEmail}{\personalEmail}%
|
||||
\ifx\personalSchoolEmail\empty\else
|
||||
\\\href{mailto:\personalSchoolEmail}{\personalSchoolEmail}%
|
||||
\fi
|
||||
\ifx\personalPhone\empty\else
|
||||
\\\personalPhone%
|
||||
\fi
|
||||
\\\href{https://\personalWebsite}{\personalWebsite}%
|
||||
\end{minipage}%
|
||||
\hfill%
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\raggedleft
|
||||
\ifx\personalHomeAddressLineOne\empty\else
|
||||
\personalHomeAddressLineOne\\%
|
||||
\personalHomeAddressLineTwo%
|
||||
\fi
|
||||
\end{minipage}
|
||||
|
||||
\vspace{1em}
|
||||
% Header with contact information
|
||||
\input{shared/sections/header}
|
||||
|
||||
% Professional Summary Section
|
||||
\noindent
|
||||
@@ -82,14 +19,8 @@
|
||||
Published researcher in human-robot interaction with experience in both academic and commercial software development.
|
||||
\end{minipage}
|
||||
|
||||
\resumesection{Education}
|
||||
|
||||
\textscbf{Bucknell University} \hfill \textscbf{Lewisburg, PA}
|
||||
|
||||
\textbf{Bachelor of Science in Computer Science and Engineering} \hfill \textbf{Expected Graduation: May 2026}
|
||||
\begin{itemize}[noitemsep,topsep=2pt]
|
||||
\item Cumulative Engineering GPA: 3.90. Dean's List: Fall 2022, Fall 2023, Spring 2024
|
||||
\end{itemize}
|
||||
% Education section
|
||||
\input{shared/sections/education}
|
||||
|
||||
\resumesection{Experience}
|
||||
|
||||
@@ -119,7 +50,6 @@
|
||||
\item Managed live production during race events, coordinating camera operators, replay, and graphics control
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\textscbf{Bucknell University} \hfill \textscbf{Lewisburg, PA}
|
||||
|
||||
\textbf{Computer Science Researcher - Human-Robot Interaction} \hfill \textbf{Jan 2023 – Present}
|
||||
@@ -164,7 +94,6 @@
|
||||
\item Assisted staff in one-laptop per person deployment and support in response to the COVID-19 pandemic, teaching students how to fully utilize newly-available remote learning tools and programs
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\resumesection{Activities}
|
||||
|
||||
\textscbf{AIChE Chem-E-Car Competition Team} \hfill \textscbf{Lewisburg, PA}
|
||||
@@ -225,29 +154,9 @@
|
||||
\item Presented the design of our car in a poster session, heavily focusing on the safety-related aspects of our design
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\resumesection{Publications}
|
||||
|
||||
\nocite{*}
|
||||
\bibliography{subfiles/refs.bib}
|
||||
\bibliographystyle{plain}
|
||||
|
||||
\resumesection{Relevant Coursework}
|
||||
|
||||
\textbf{Systems \& Architecture:} Computer Systems, Operating Systems Design, Computer Networks \& Security
|
||||
|
||||
\textbf{Software Development:} Software Engineering, Data Structures \& Algorithms, Research Methods, Ethics in Computing
|
||||
|
||||
\textbf{Mathematics:} Calculus II, Linear Algebra, Discrete Mathematics, Statistics, Applied Statistics with R, Data Mining
|
||||
|
||||
\resumesection{Skills \& Interests}
|
||||
|
||||
\textbf{Languages \& Frameworks:} Java, C/C++, Python, JavaScript/TypeScript, React, Next.js, PHP, SQL
|
||||
|
||||
\textbf{Backend \& DevOps:} REST APIs, MySQL, PostgreSQL, Docker, Apache Web Server, NGINX, ROS2
|
||||
|
||||
\textbf{Cloud \& Infrastructure:} AWS, GCP, Azure, Backblaze, Linux (RHEL/Debian), CI/CD
|
||||
|
||||
\textbf{Development Tools:} Git, JetBrains Suite, VS Code, Cursor, Linux CLI
|
||||
% Shared sections
|
||||
\input{shared/sections/publications}
|
||||
\input{shared/sections/coursework}
|
||||
\input{shared/sections/skills}
|
||||
|
||||
\end{document}
|
||||
138
resume.tex
138
resume.tex
@@ -1,87 +1,18 @@
|
||||
\documentclass{article}
|
||||
\setlength{\parindent}{0pt}
|
||||
\setlength{\parskip}{0em}
|
||||
\usepackage{enumitem}
|
||||
\usepackage{hyperref}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage[left=0.5in,top=0.5in,right=0.5in,bottom=0.5in]{geometry}
|
||||
|
||||
% Define spacing variables
|
||||
\newlength{\sectspaceabove}
|
||||
\newlength{\sectspacebelow}
|
||||
\setlength{\sectspaceabove}{-0.5em} % Space before section titles
|
||||
\setlength{\sectspacebelow}{-0.5em} % Space after section titles
|
||||
|
||||
\usepackage{etoolbox}
|
||||
\patchcmd{\thebibliography}{\section*{\refname}}{}{}{}
|
||||
|
||||
% Hide page numbers
|
||||
\pagestyle{empty}
|
||||
|
||||
% Custom macro for small caps and bold
|
||||
\newcommand{\textscbf}[1]{\textbf{\textsc{#1}}}
|
||||
|
||||
% Custom macro for section headers with controlled spacing
|
||||
\newcommand{\resumesection}[1]{%
|
||||
\vspace{\sectspaceabove}%
|
||||
\begin{center}
|
||||
\textscbf{#1}
|
||||
\end{center}%
|
||||
\vspace{\sectspacebelow}%
|
||||
}
|
||||
% Include common style
|
||||
\input{shared/style/common}
|
||||
|
||||
% Include personal information
|
||||
\input{personal_info}
|
||||
|
||||
\begin{document}
|
||||
\begin{center}
|
||||
{\large \textscbf{\personalName}}
|
||||
\end{center}
|
||||
|
||||
\vspace{0.5em}
|
||||
% Header with contact information
|
||||
\input{shared/sections/header}
|
||||
|
||||
\noindent
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\raggedright
|
||||
\ifx\personalSchoolAddressLineOne\empty\else
|
||||
\mbox{}\par\nobreak\vspace{-\baselineskip}
|
||||
\personalSchoolAddressLineOne\\%
|
||||
\personalSchoolAddressLineTwo\\%
|
||||
\personalSchoolAddressLineThree%
|
||||
\fi
|
||||
\end{minipage}%
|
||||
\hfill%
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\centering
|
||||
\href{mailto:\personalEmail}{\personalEmail}%
|
||||
\ifx\personalSchoolEmail\empty\else
|
||||
\\\href{mailto:\personalSchoolEmail}{\personalSchoolEmail}%
|
||||
\fi
|
||||
\ifx\personalPhone\empty\else
|
||||
\\\personalPhone%
|
||||
\fi
|
||||
\\\href{https://\personalWebsite}{\personalWebsite}%
|
||||
\end{minipage}%
|
||||
\hfill%
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\raggedleft
|
||||
\ifx\personalHomeAddressLineOne\empty\else
|
||||
\personalHomeAddressLineOne\\%
|
||||
\personalHomeAddressLineTwo%
|
||||
\fi
|
||||
\end{minipage}
|
||||
|
||||
\vspace{1em}
|
||||
|
||||
\resumesection{Education}
|
||||
|
||||
\textscbf{Bucknell University} \hfill \textscbf{Lewisburg, PA}
|
||||
|
||||
\textbf{Bachelor of Science in Computer Science and Engineering} \hfill \textbf{Expected Graduation: May 2026}
|
||||
\begin{itemize}[noitemsep,topsep=2pt]
|
||||
\item Cumulative Engineering GPA: 3.90. Dean's List: Fall 2022, Fall 2023, Spring 2024
|
||||
\end{itemize}
|
||||
% Education section
|
||||
\input{shared/sections/education}
|
||||
|
||||
\resumesection{Experience}
|
||||
|
||||
@@ -95,28 +26,6 @@
|
||||
\item Orchestrated migration to containerized architecture using Docker and implemented automated backup systems to improve reliability
|
||||
\end{itemize}
|
||||
|
||||
%\textscbf{Bucknell University} \hfill \textscbf{Lewisburg, PA}
|
||||
%
|
||||
%\textbf{Computer Science Researcher - Human-Robot Interaction} \hfill \textbf{Jan 2023 – Present}
|
||||
%\begin{itemize}[noitemsep,topsep=2pt]
|
||||
% \item Co-founded an interdisciplinary research lab and meeting group, engaging peers in the world of human-robot interaction
|
||||
% \item Led ongoing development of a platform for Human-Robot Interaction experiments, resulting in a first-author publication
|
||||
%\end{itemize}
|
||||
%
|
||||
%\textbf{Teaching Assistant and Tutor - Computer Science, Engineering, and Physics} \hfill \textbf{Aug 2023 - Present}
|
||||
%\begin{itemize}[noitemsep,topsep=2pt]
|
||||
%\item Mentored diverse student groups in Java programming, Arduino development, and physics lab experiments, adapting teaching methods to various learning styles
|
||||
%\item Guided engineering teams through agile development cycles while emphasizing ethical design considerations and proper documentation
|
||||
%\item Supported data analysis across disciplines using Excel, Logger Pro, and custom software tools
|
||||
%\item Fostered inclusive learning environments through hands-on workshops and one-on-one tutoring sessions
|
||||
%\end{itemize}
|
||||
%
|
||||
%\textbf{Computer Science Research Assistant - Chemical Engineering Department} \hfill \textbf{Aug 2023 – Present}
|
||||
%\begin{itemize}[noitemsep,topsep=2pt]
|
||||
% \item Developed sensor systems to improve data collection in coffee-related biochemical research, enhancing accuracy and efficiency of experiments using custom software tools to streamline data analysis.
|
||||
%\end{itemize}
|
||||
%
|
||||
|
||||
\textscbf{Bucknell University} \hfill \textscbf{Lewisburg, PA}
|
||||
|
||||
\textbf{Computer Science Researcher - Human-Robot Interaction} \hfill \textbf{Jan 2023 – Present}
|
||||
@@ -138,16 +47,8 @@
|
||||
\item Provided technical mentorship at the Engineering Study Spot, focusing on programming concepts and system design
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\resumesection{Activities}
|
||||
|
||||
%\textscbf{Bucknell Coffee Society} \hfill \textscbf{Lewisburg, PA}
|
||||
%
|
||||
%\textbf{Treasurer} \hfill \textbf{Oct 2023 – Present}
|
||||
%\begin{itemize}[noitemsep,topsep=2pt]
|
||||
% \item Co-established and launched a new campus organization, managing financial operations and coordinating event logistics.
|
||||
%\end{itemize}
|
||||
|
||||
\textscbf{AIChE Chem-E-Car Competition Team} \hfill \textscbf{Lewisburg, PA}
|
||||
|
||||
\textbf{President, Electrical and Mechanical Team Lead} \hfill \textbf{Jan 2023 – Present}
|
||||
@@ -156,28 +57,9 @@
|
||||
\item Implemented finite state machine architecture integrating spectrometer readings, relay control, and LED feedback for real-time reaction monitoring in isolated chamber conditions
|
||||
\end{itemize}
|
||||
|
||||
\resumesection{Publications}
|
||||
|
||||
\nocite{*}
|
||||
\bibliography{subfiles/refs.bib}
|
||||
\bibliographystyle{plain}
|
||||
|
||||
\resumesection{Relevant Coursework}
|
||||
|
||||
\textbf{Systems \& Architecture:} Computer Systems, Operating Systems Design, Computer Networks \& Security
|
||||
|
||||
\textbf{Software Development:} Software Engineering, Data Structures \& Algorithms, Research Methods, Ethics in Computing
|
||||
|
||||
\textbf{Mathematics:} Calculus II, Linear Algebra, Discrete Mathematics, Statistics, Applied Statistics with R, Data Mining
|
||||
|
||||
\resumesection{Skills \& Interests}
|
||||
|
||||
\textbf{Languages \& Frameworks:} Java, C/C++, Python, JavaScript/TypeScript, React, Next.js, PHP, SQL
|
||||
|
||||
\textbf{Backend \& DevOps:} REST APIs, MySQL, PostgreSQL, Docker, Apache Web Server, NGINX, ROS2
|
||||
|
||||
\textbf{Cloud \& Infrastructure:} AWS, GCP, Azure, Backblaze, Linux (RHEL/Debian), CI/CD
|
||||
|
||||
\textbf{Development Tools:} Git, JetBrains Suite, VS Code, Cursor, Linux CLI
|
||||
% Shared sections
|
||||
\input{shared/sections/publications}
|
||||
\input{shared/sections/coursework}
|
||||
\input{shared/sections/skills}
|
||||
|
||||
\end{document}
|
||||
7
shared/sections/coursework.tex
Normal file
7
shared/sections/coursework.tex
Normal file
@@ -0,0 +1,7 @@
|
||||
\resumesection{Relevant Coursework}
|
||||
|
||||
\textbf{Systems \& Architecture:} Computer Systems, Operating Systems Design, Computer Networks \& Security
|
||||
|
||||
\textbf{Software Development:} Software Engineering, Data Structures \& Algorithms, Research Methods, Ethics in Computing
|
||||
|
||||
\textbf{Mathematics:} Calculus II, Linear Algebra, Discrete Mathematics, Statistics, Applied Statistics with R, Data Mining
|
||||
8
shared/sections/education.tex
Normal file
8
shared/sections/education.tex
Normal file
@@ -0,0 +1,8 @@
|
||||
\resumesection{Education}
|
||||
|
||||
\textscbf{Bucknell University} \hfill \textscbf{Lewisburg, PA}
|
||||
|
||||
\textbf{Bachelor of Science in Computer Science and Engineering} \hfill \textbf{Expected Graduation: May 2026}
|
||||
\begin{itemize}[noitemsep,topsep=2pt]
|
||||
\item Cumulative Engineering GPA: 3.90. Dean's List: Fall 2022, Fall 2023, Spring 2024
|
||||
\end{itemize}
|
||||
38
shared/sections/header.tex
Normal file
38
shared/sections/header.tex
Normal file
@@ -0,0 +1,38 @@
|
||||
\begin{center}
|
||||
{\large \textscbf{\personalName}}
|
||||
\end{center}
|
||||
|
||||
\vspace{0.5em}
|
||||
|
||||
\noindent
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\raggedright
|
||||
\ifx\personalSchoolAddressLineOne\empty\else
|
||||
\mbox{}\par\nobreak\vspace{-\baselineskip}
|
||||
\personalSchoolAddressLineOne\\%
|
||||
\personalSchoolAddressLineTwo\\%
|
||||
\personalSchoolAddressLineThree%
|
||||
\fi
|
||||
\end{minipage}%
|
||||
\hfill%
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\centering
|
||||
\href{mailto:\personalEmail}{\personalEmail}%
|
||||
\ifx\personalSchoolEmail\empty\else
|
||||
\\\href{mailto:\personalSchoolEmail}{\personalSchoolEmail}%
|
||||
\fi
|
||||
\\\href{https://\personalWebsite}{\personalWebsite}%
|
||||
\ifx\personalPhone\empty\else
|
||||
\\\personalPhone%
|
||||
\fi
|
||||
\end{minipage}%
|
||||
\hfill%
|
||||
\begin{minipage}[t]{0.33\textwidth}
|
||||
\raggedleft
|
||||
\ifx\personalHomeAddressLineOne\empty\else
|
||||
\personalHomeAddressLineOne\\%
|
||||
\personalHomeAddressLineTwo%
|
||||
\fi
|
||||
\end{minipage}
|
||||
|
||||
\vspace{1em}
|
||||
5
shared/sections/publications.tex
Normal file
5
shared/sections/publications.tex
Normal file
@@ -0,0 +1,5 @@
|
||||
\resumesection{Publications}
|
||||
|
||||
\nocite{*}
|
||||
\bibliography{subfiles/refs.bib}
|
||||
\bibliographystyle{plain}
|
||||
9
shared/sections/skills.tex
Normal file
9
shared/sections/skills.tex
Normal file
@@ -0,0 +1,9 @@
|
||||
\resumesection{Skills \& Interests}
|
||||
|
||||
\textbf{Languages \& Frameworks:} Java, C/C++, Python, JavaScript/TypeScript, React, Next.js, PHP, SQL
|
||||
|
||||
\textbf{Backend \& DevOps:} REST APIs, MySQL, PostgreSQL, Docker, Apache Web Server, NGINX, ROS2
|
||||
|
||||
\textbf{Cloud \& Infrastructure:} AWS, GCP, Azure, Backblaze, Linux (RHEL/Debian), CI/CD
|
||||
|
||||
\textbf{Development Tools:} Git, JetBrains Suite, VS Code, Cursor, Linux CLI
|
||||
31
shared/style/common.tex
Normal file
31
shared/style/common.tex
Normal file
@@ -0,0 +1,31 @@
|
||||
\setlength{\parindent}{0pt}
|
||||
\setlength{\parskip}{0em}
|
||||
\usepackage{enumitem}
|
||||
\usepackage{hyperref}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage[left=0.5in,top=0.5in,right=0.5in,bottom=0.5in]{geometry}
|
||||
|
||||
% Define spacing variables
|
||||
\newlength{\sectspaceabove}
|
||||
\newlength{\sectspacebelow}
|
||||
\setlength{\sectspaceabove}{-0.5em} % Space before section titles
|
||||
\setlength{\sectspacebelow}{-0.5em} % Space after section titles
|
||||
|
||||
\usepackage{etoolbox}
|
||||
\patchcmd{\thebibliography}{\section*{\refname}}{}{}{}
|
||||
|
||||
% Hide page numbers
|
||||
\pagestyle{empty}
|
||||
|
||||
% Custom macro for small caps and bold
|
||||
\newcommand{\textscbf}[1]{\textbf{\textsc{#1}}}
|
||||
|
||||
% Custom macro for section headers with controlled spacing
|
||||
\newcommand{\resumesection}[1]{%
|
||||
\vspace{\sectspaceabove}%
|
||||
\begin{center}
|
||||
\textscbf{#1}
|
||||
\end{center}%
|
||||
\vspace{\sectspacebelow}%
|
||||
}
|
||||
Reference in New Issue
Block a user