add formatting
This commit is contained in:
19
.direnv/bin/nix-direnv-reload
Executable file
19
.direnv/bin/nix-direnv-reload
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
if [[ ! -d "/home/alice/.gitprojects/resumes" ]]; then
|
||||
echo "Cannot find source directory; Did you move it?"
|
||||
echo "(Looking for "/home/alice/.gitprojects/resumes")"
|
||||
echo 'Cannot force reload with this script - use "direnv reload" manually and then try again'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# rebuild the cache forcefully
|
||||
_nix_direnv_force_reload=1 direnv exec "/home/alice/.gitprojects/resumes" true
|
||||
|
||||
# Update the mtime for .envrc.
|
||||
# This will cause direnv to reload again - but without re-building.
|
||||
touch "/home/alice/.gitprojects/resumes/.envrc"
|
||||
|
||||
# Also update the timestamp of whatever profile_rc we have.
|
||||
# This makes sure that we know we are up to date.
|
||||
touch -r "/home/alice/.gitprojects/resumes/.envrc" "/home/alice/.gitprojects/resumes/.direnv"/*.rc
|
||||
34
.github/copilot-instructions.md
vendored
Normal file
34
.github/copilot-instructions.md
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
# Project Guidelines
|
||||
|
||||
## Code Style
|
||||
- Primary source is `main.tex`; keep edits focused there unless build config changes are required.
|
||||
- Follow existing LaTeX macro style: reusable `\newcommand` helpers for resume blocks (e.g., `\resumeSubheading`, `\resumeEducation`, `\resumeItem`).
|
||||
- Preserve compact spacing/layout conventions (`\vspace`, custom `\titleformat`, `tabular*` alignment) unless asked to redesign formatting.
|
||||
- Keep package usage consistent with current preamble and avoid adding new packages unless required for a user request.
|
||||
|
||||
## Architecture
|
||||
- This workspace is a single-document resume project.
|
||||
- `main.tex` contains both template macros and resume content.
|
||||
- Files like `main.aux`, `main.fdb_latexmk`, and `main.fls` are generated build artifacts, not source-of-truth.
|
||||
- `glyphtounicode` is included for text extractability/ATS friendliness via `\pdfgentounicode=1`.
|
||||
|
||||
## Build and Test
|
||||
- Build PDF (preferred): `latexmk -pdf main.tex`
|
||||
- Alternative build: `pdflatex main.tex` (run multiple times if references/layout need settling)
|
||||
- Clean artifacts: `latexmk -c`
|
||||
- Validate by checking successful compile and reviewing resulting `main.pdf` for layout overflow/line wrapping regressions.
|
||||
|
||||
## Project Conventions
|
||||
- Use existing macros instead of ad-hoc formatting in section bodies.
|
||||
- Keep section/list structure aligned with current pattern: `\resumeSubHeadingListStart` / `\resumeSubHeadingListEnd` and `\resumeItemListStart` / `\resumeItemListEnd`.
|
||||
- Keep content concise and achievement-oriented; avoid large prose blocks that break one-page layout assumptions.
|
||||
- Do not manually edit generated files (`*.aux`, `*.fdb_latexmk`, `*.fls`, etc.); `.gitignore` already treats these as build outputs.
|
||||
|
||||
## Integration Points
|
||||
- External links are rendered with `hyperref` (`hidelinks`) and should stay valid/HTTPS.
|
||||
- Typography/layout relies on current package set (`sourcesanspro`, `titlesec`, `multicol`, `tabularx`); changing these can significantly alter spacing.
|
||||
|
||||
## Security
|
||||
- Resume data includes personally identifiable information (name, location, email, phone, profile URLs).
|
||||
- Do not invent or expose new sensitive personal details when generating edits.
|
||||
- Prefer placeholders when asked to add unknown contact/private information.
|
||||
95
.github/prompts/resume-review.prompt.md
vendored
Normal file
95
.github/prompts/resume-review.prompt.md
vendored
Normal file
@@ -0,0 +1,95 @@
|
||||
---
|
||||
name: "Resume Review"
|
||||
description: "Use when: reviewing your resume as a hiring manager for SWE roles at startups or big tech / FAANG. Reads the LaTeX source, builds the PDF, views the rendered layout, and delivers structured feedback covering ATS keywords, impact metrics, clarity, and formatting."
|
||||
agent: agent
|
||||
---
|
||||
|
||||
You are an experienced software engineering hiring manager who has hired engineers at top-tier startups and FAANG companies. Your standards are high. You are evaluating this resume as though it just landed in your inbox for a mid-to-senior software engineering role. Be direct, specific, and constructive — prioritize signal over style.
|
||||
|
||||
## Your Task
|
||||
|
||||
Review the candidate's resume by following the steps below in order.
|
||||
|
||||
### Step 1 — Read the LaTeX source
|
||||
|
||||
Read [main.tex](../main.tex) to understand the full content and structure of the resume: sections, roles, dates, technologies, bullet text, projects, certifications, and any formatting macros.
|
||||
|
||||
### Step 2 — Build the PDF
|
||||
|
||||
Run the following command in the terminal to compile the resume:
|
||||
|
||||
```
|
||||
latexmk -pdf main.tex
|
||||
```
|
||||
|
||||
If the build produces errors, include them as a finding under **Formatting & Layout** (e.g., "Compile error on line X — fix before submission"). Continue the review using the LaTeX source regardless.
|
||||
|
||||
### Step 3 — View the rendered PDF
|
||||
|
||||
Clean up any stale preview files, then convert the first page of the built PDF to a PNG and view it:
|
||||
|
||||
```
|
||||
rm -f main-preview*.png
|
||||
pdftoppm -r 150 -png main.pdf main-preview
|
||||
```
|
||||
|
||||
Then use #tool:view_image to view `main-preview-1.png`.
|
||||
|
||||
If this step fails for any reason (conversion error, tool unavailable, file not found), note it briefly — e.g., *"PDF preview unavailable — layout assessment based on LaTeX source only"* — and proceed. Do not retry or block on this step.
|
||||
|
||||
### Step 4 — Deliver structured feedback
|
||||
|
||||
Write your review using exactly the sections below. Be specific: quote bullet text, name technologies, cite line counts or spacing observations. Avoid vague commentary.
|
||||
|
||||
---
|
||||
|
||||
## Resume Review
|
||||
|
||||
### Overall Impression
|
||||
*Pass / Borderline / No — and why in 2–3 sentences.* Would this clear a 30-second recruiter screen and reach your desk? Would it pass ATS filtering for a standard SWE job description at a startup or FAANG?
|
||||
|
||||
### Strengths
|
||||
What genuinely stands out? Consider: recognizable employers or schools, strong quantified impact, relevant technical depth, notable projects, certifications, or clean presentation. Be honest — only list real strengths.
|
||||
|
||||
### ATS & Keywords
|
||||
Evaluate keyword coverage for a mid-to-senior SWE role at a startup or FAANG. Consider:
|
||||
- Programming languages (e.g., Python, Java, Go, TypeScript)
|
||||
- Cloud platforms and services (e.g., AWS, GCP, Azure, Lambda, S3, EKS)
|
||||
- Frameworks and tools (e.g., React, Spring Boot, Kubernetes, Terraform, Kafka)
|
||||
- Engineering practices (e.g., CI/CD, microservices, distributed systems, REST, gRPC)
|
||||
- Certifications (e.g., AWS SAA, CKA)
|
||||
|
||||
List keywords that are **present and strong**, **present but weak** (mentioned once or vaguely), and **missing or underrepresented** relative to typical FAANG/startup JDs.
|
||||
|
||||
### Impact & Metrics
|
||||
Are accomplishments achievement-oriented and quantified? Review each bullet:
|
||||
- Does it lead with a strong action verb?
|
||||
- Does it state *what* was built/improved *and* the measurable result (latency, throughput, cost, scale, time saved, error rate)?
|
||||
- Are there weak "responsible for" or "worked on" bullets that should be rewritten?
|
||||
|
||||
Call out specific bullets that are strong and specific bullets that need work (quote them).
|
||||
|
||||
### Clarity & Conciseness
|
||||
Flag any content that is:
|
||||
- Vague or jargon-heavy without substance
|
||||
- Redundant across bullet points or sections
|
||||
- Overlong (bullets exceeding ~90 characters or two lines in the rendered PDF)
|
||||
- Confusing to someone unfamiliar with the employer's internal terminology
|
||||
|
||||
### Formatting & Layout
|
||||
Assess the rendered visual (or LaTeX structure if PDF unavailable):
|
||||
- Is the layout clean and easy to scan in 30 seconds?
|
||||
- Is whitespace used well, or does it feel cramped/padded to fill space?
|
||||
- Does it fit on one page without overflow?
|
||||
- Are section headers, dates, and company names visually distinct?
|
||||
- Any alignment, spacing, or typography issues?
|
||||
|
||||
If PDF preview was unavailable, state that clearly and base this section on the LaTeX source structure.
|
||||
|
||||
### Top 3–5 Actionable Improvements
|
||||
List the highest-priority changes the candidate should make before submitting, ranked by impact. Each item should be:
|
||||
- **Specific**: name the section, line, or bullet
|
||||
- **Actionable**: say exactly what to change or add
|
||||
- **Justified**: one sentence on why it matters for startup/FAANG hiring
|
||||
|
||||
Format as a numbered list.
|
||||
44
.github/workflows/build-resume.yaml
vendored
Normal file
44
.github/workflows/build-resume.yaml
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
name: Build and Release Resume PDF
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- 'main.tex'
|
||||
- '.github/workflows/build-resume.yaml'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install LaTeX dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y latexmk texlive-latex-base texlive-latex-extra texlive-fonts-recommended
|
||||
|
||||
- name: Build PDF
|
||||
run: latexmk -pdf main.tex && mv main.pdf Alice_Huston_Resume_Software_Engineer.pdf
|
||||
|
||||
- name: Upload PDF artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: resume-pdf
|
||||
path: Alice_Huston_Resume_Software_Engineer.pdf
|
||||
|
||||
- name: Create Release
|
||||
if: success()
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
files: Alice_Huston_Resume_Software_Engineer.pdf
|
||||
tag_name: resume-${{ github.run_number }}
|
||||
body: "Resume PDF built from commit ${{ github.sha }}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
61
flake.lock
generated
Normal file
61
flake.lock
generated
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"nodes": {
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1774386573,
|
||||
"narHash": "sha256-4hAV26quOxdC6iyG7kYaZcM3VOskcPUrdCQd/nx8obc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "46db2e09e1d3f113a13c0d7b81e2f221c63b8ce9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
45
flake.nix
Normal file
45
flake.nix
Normal file
@@ -0,0 +1,45 @@
|
||||
{
|
||||
description = "Resume development environment";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, flake-utils }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
};
|
||||
|
||||
tex = (
|
||||
pkgs.texlive.combine {
|
||||
inherit (pkgs.texlive)
|
||||
scheme-medium
|
||||
preprint
|
||||
titlesec
|
||||
enumitem
|
||||
sourcesanspro
|
||||
xifthen
|
||||
ifmtarg
|
||||
framed
|
||||
paralist
|
||||
fontawesome7
|
||||
;
|
||||
}
|
||||
);
|
||||
|
||||
preCommitTool = if pkgs ? prek then pkgs.prek else pkgs.pre-commit;
|
||||
in
|
||||
{
|
||||
devShells.default = pkgs.mkShell {
|
||||
packages = [
|
||||
tex
|
||||
pkgs.tex-fmt
|
||||
preCommitTool
|
||||
];
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
||||
240
main.tex
240
main.tex
@@ -24,7 +24,6 @@
|
||||
\renewcommand{\headrulewidth}{0pt}
|
||||
\renewcommand{\footrulewidth}{0pt}
|
||||
|
||||
|
||||
\addtolength{\oddsidemargin}{-0.5in}
|
||||
\addtolength{\evensidemargin}{-0.5in}
|
||||
\addtolength{\textwidth}{1in}
|
||||
@@ -41,78 +40,82 @@
|
||||
\vspace{-0.85em}\bfseries%\centering
|
||||
}{}{0em}{}[\color{black}\titlerule\vspace{-5pt}]
|
||||
|
||||
|
||||
\pdfgentounicode=1
|
||||
|
||||
\newcommand{\resumeItem}[1]{
|
||||
\item\small{
|
||||
\item\small{
|
||||
{#1 \vspace{-2pt}}
|
||||
}
|
||||
}
|
||||
|
||||
\newcommand{\resumeSubheading}[4]{
|
||||
\vspace{-2pt}\item
|
||||
\begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
|
||||
\textbf{#1} & #2 \\
|
||||
\textit{\small#3} & \textit{\small #4} \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
\vspace{-2pt}
|
||||
\item
|
||||
\begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
|
||||
\textbf{#1} & #2 \\
|
||||
\textit{\small#3} & \textit{\small #4} \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
}
|
||||
|
||||
\newcommand{\resumeEducation}[5]{
|
||||
\vspace{-2pt}\item
|
||||
\begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
|
||||
\textbf{#1} | #2 & #3 \\
|
||||
\textit{\small#4} & \textit{\small #5} \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
\vspace{-2pt}
|
||||
\item
|
||||
\begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
|
||||
\textbf{#1} | #2 & #3 \\
|
||||
\textit{\small#4} & \textit{\small #5} \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
}
|
||||
|
||||
\newcommand{\resumeSubSubheading}[2]{
|
||||
\item
|
||||
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
|
||||
\textit{\small#1} & \textit{\small #2} \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
\item
|
||||
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
|
||||
\textit{\small#1} & \textit{\small #2} \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
}
|
||||
|
||||
\newcommand{\resumeProjectHeading}[2]{
|
||||
\item
|
||||
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
|
||||
\small\textbf{#1} & #2 \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
\item
|
||||
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
|
||||
\small\textbf{#1} & #2 \\
|
||||
\end{tabular*}\vspace{-7pt}
|
||||
}
|
||||
|
||||
\newcommand{\resumeSubItem}[1]{\resumeItem{#1}\vspace{-4pt}}
|
||||
|
||||
\renewcommand\labelitemii{$\vcenter{\hbox{\tiny$\bullet$}}$}
|
||||
|
||||
\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=0.15in, label={}]}
|
||||
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}}
|
||||
\newcommand{\resumeItemListStart}{\begin{itemize}}
|
||||
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}}
|
||||
\newcommand{\resumeSubHeadingListStart}{
|
||||
\begin{itemize}[leftmargin=0.15in, label={}]}
|
||||
\newcommand{\resumeSubHeadingListEnd}{
|
||||
\end{itemize}}
|
||||
\newcommand{\resumeItemListStart}{
|
||||
\begin{itemize}}
|
||||
\newcommand{\resumeItemListEnd}{
|
||||
\end{itemize}\vspace{-5pt}}
|
||||
|
||||
\begin{document}
|
||||
|
||||
|
||||
|
||||
\begin{center}
|
||||
{\LARGE Alice Huston} \\ \vspace{2pt}
|
||||
\begin{multicols}{2}
|
||||
\begin{flushleft}
|
||||
{\LARGE Alice Huston} \\ \vspace{2pt}
|
||||
\begin{multicols}{2}
|
||||
\begin{flushleft}
|
||||
%% Github profile is no longer used
|
||||
%% work is moved over to private gitea instance at nayeonie.com
|
||||
%%
|
||||
%%\href{https://www.github.com/ahuston-0}{github.com/ahuston-0}\\
|
||||
\faIcon{git} \href{https://nayeonie.com/ahuston-0}{nayeonie.com/ahuston-0}\\
|
||||
\faIcon{linkedin} \href{https://www.linkedin.com/in/ahuston0}{linkedin.com/in/ahuston0}
|
||||
\end{flushleft}
|
||||
%%\href{https://www.github.com/ahuston-0}{github.com/ahuston-0}\\
|
||||
\textbf{Portfolio}:
|
||||
\href{https://nayeonie.com/ahuston-0}{nayeonie.com/ahuston-0}\\
|
||||
\faIcon{linkedin}
|
||||
\href{https://www.linkedin.com/in/ahuston0}{linkedin.com/in/ahuston0}
|
||||
\end{flushleft}
|
||||
|
||||
\begin{flushright}
|
||||
\href{tel:848-210-1300}{(848) 210-1300}\\
|
||||
\href{mailto:{aliceghuston@gmail.com}}{aliceghuston@gmail.com}
|
||||
\end{flushright}
|
||||
\end{multicols}
|
||||
\begin{flushright}
|
||||
\href{tel:848-210-1300}{(848) 210-1300}\\
|
||||
\href{mailto:{aliceghuston@gmail.com}}{aliceghuston@gmail.com}
|
||||
\end{flushright}
|
||||
\end{multicols}
|
||||
\end{center}
|
||||
|
||||
|
||||
%-----------EDUCATION-----------
|
||||
\vspace{-1.5em}
|
||||
\section{Education}
|
||||
@@ -127,19 +130,21 @@
|
||||
\vspace{-8pt}
|
||||
|
||||
\begin{multicols}{2}
|
||||
\small{
|
||||
\textbf{Languages}{: C/C++, Python, Java, Bash, Typescript} \\
|
||||
\textbf{Frameworks}{: Hadoop, Airflow, Kubernetes, Docker, OpenCV} \\
|
||||
\textbf{OS}{: NixOS, RHEL 8, Debian, Raspberry Pi OS, Ubuntu Server, Windows} \\
|
||||
\textbf{Tools}{: LaTeX, SQL, ROS, OpenGL}
|
||||
}
|
||||
\small{
|
||||
\textbf{Languages}{: C/C++, Python, Java, Bash, Typescript} \\
|
||||
\textbf{Frameworks}{: Hadoop, Airflow, Kubernetes, Docker, OpenCV} \\
|
||||
\textbf{Databases/Lakehouses}{: Starburst, Iceberg, Hive,
|
||||
CockroachDB, OracleDB }\\
|
||||
\textbf{OS}{: NixOS, RHEL 8, Debian, Ubuntu Server, Windows} \\
|
||||
\textbf{Tools}{: LaTeX, Terraform, SQL, OpenGL}
|
||||
}
|
||||
|
||||
\columnbreak
|
||||
\columnbreak
|
||||
|
||||
\small{
|
||||
\textbf{AWS Certified Solutions Architect - Associate} \\
|
||||
Amazon Web Services, Mar. 2024
|
||||
}
|
||||
\small{
|
||||
\textbf{AWS Certified Solutions Architect - Associate} \\
|
||||
Amazon Web Services, Mar. 2024
|
||||
}
|
||||
\end{multicols}
|
||||
|
||||
%-----------EXPERIENCE-----------
|
||||
@@ -149,40 +154,58 @@ Amazon Web Services, Mar. 2024
|
||||
{Software Engineer II}{Jan. 2025 -- Present}
|
||||
{JPMorgan Chase}{Jersey City, NJ}
|
||||
\resumeItemListStart
|
||||
\resumeItem{Created configurable data ingestion framework for automated data refinement and movement for hybrid data lake}
|
||||
\resumeItem{Architected and implemented an orchestration system based on Apache airflow for both event-based and SLA-based data ingestion}
|
||||
\resumeItem{Led weekly office hour sessions to demonstrate and assist with onboarding and configuring new datasets}
|
||||
\resumeItem{Trained a team of developers to support the custom frameworks for use across multiple applications}
|
||||
\resumeItem{Created helm charts for making platform services available and configurable to other teams }
|
||||
\resumeItem{Created configurable data ingestion framework for
|
||||
automated data refinement and movement for hybrid data lake}
|
||||
\resumeItem{Architected and implemented an orchestration system based
|
||||
on Apache airflow for both event-based and SLA-based data ingestion}
|
||||
\resumeItem{Led weekly office hour sessions to demonstrate and assist
|
||||
with onboarding and configuring new datasets}
|
||||
\resumeItem{Trained a team of developers to support the custom
|
||||
frameworks for use across multiple applications}
|
||||
\resumeItem{Created helm charts for making platform services
|
||||
available and configurable to other teams }
|
||||
\resumeItemListEnd
|
||||
|
||||
%% create a new resume item below for a software engineering job at JPMorgan Chase
|
||||
|
||||
%% create a new resume item below for a software engineering job at
|
||||
% JPMorgan Chase
|
||||
|
||||
\resumeSubheading
|
||||
{Site Reliability Engineer}{Jul. 2022 -- Jan. 2025}
|
||||
{JPMorgan Chase}{Jersey City, NJ}
|
||||
\resumeItemListStart
|
||||
\resumeItem{Supported 30 applications}
|
||||
\resumeItem{SME for Hadoop data lake, means additional support for tableau dashboards, kubernetes applications, cloud foundry applications, maintaining dremio instance, S3 compatible object store}
|
||||
\resumeItem{SME for Linux systems, Networking (firewalls, load balancers, etc.), Hadoop}
|
||||
\resumeItem{Led toil reduction and noisy alert reduction across our applications}
|
||||
\resumeItem{Led onboarding and standardization efforts for observability tooling}
|
||||
\resumeItem{Fully automated disaster recovery procedures across a subset of our applications}
|
||||
\resumeItem{Automated copy, validation of data, and merging of across Hadoop lakes (72 hour effort reduction)}
|
||||
\resumeItem{SME for Hadoop data lake, means additional support for
|
||||
Tableau dashboards, Kubernetes applications, cloud foundry
|
||||
applications, maintaining dremio instance, S3 compatible object store}
|
||||
\resumeItem{SME for Linux systems, Networking (firewalls, load
|
||||
balancers, etc.), Hadoop}
|
||||
\resumeItem{Led toil reduction and noisy alert reduction across our
|
||||
applications}
|
||||
\resumeItem{Led onboarding and standardization efforts for
|
||||
observability tooling}
|
||||
\resumeItem{Fully automated disaster recovery procedures across a
|
||||
subset of our applications}
|
||||
\resumeItem{Automated copy, validation of data, and merging of across
|
||||
Hadoop lakes (72 hour effort reduction)}
|
||||
\resumeItemListEnd
|
||||
|
||||
\resumeSubheading
|
||||
{Software Development Intern}{Dec. 2020 -- May 2022}
|
||||
{Stevens Institute of Technology}{(Remote) Hoboken, NJ}
|
||||
\resumeItemListStart
|
||||
\resumeItem{Led a team of student interns to develop \href{https://github.com/StevensDeptECE/GrailGUI}{\textbf{Grail}}, an \textbf{OpenGL}-based graphics API and browser engine}
|
||||
\resumeItem{Ported \textbf{C++} networking functionality on \textbf{Linux} to \textbf{Windows} using \textbf{Winsock}}
|
||||
\resumeItem{Added support for \textbf{ESRI Shapefiles} to draw and animate maps through rendering engine}
|
||||
\resumeItem{Improved XDL Type system, a custom standard similar to CORBA, to send and receive statically-typed data}
|
||||
\resumeItem{Led a team of student interns to develop
|
||||
\href{https://github.com/StevensDeptECE/GrailGUI}{\textbf{Grail}}, an
|
||||
\textbf{OpenGL}-based graphics API and browser engine}
|
||||
\resumeItem{Ported \textbf{C++} networking functionality on
|
||||
\textbf{Linux} to \textbf{Windows} using \textbf{Winsock}}
|
||||
\resumeItem{Added support for \textbf{ESRI Shapefiles} to draw and
|
||||
animate maps through rendering engine}
|
||||
\resumeItem{Improved XDL Type system, a custom standard similar to
|
||||
CORBA, to send and receive statically-typed data}
|
||||
\resumeItemListEnd
|
||||
|
||||
% Removing this experience as it is not as relevant to the software engineering positions I am applying for
|
||||
% Removing this experience as it is not as relevant to the software
|
||||
% engineering positions I am applying for
|
||||
% and the work was not as technical as my other experiences
|
||||
%\resumeSubheading
|
||||
%{IT R\&D Project Management Intern}{Jun. 2020 -- Aug. 2020}
|
||||
@@ -191,25 +214,33 @@ Amazon Web Services, Mar. 2024
|
||||
%\resumeItem{Led meetings with potential vendors for an upcoming project}
|
||||
%\resumeItem{Gathered requirements from past projects and potential users}
|
||||
%\resumeItem{Collected and processed data to narrow down potential vendors and
|
||||
% viable products}
|
||||
%\resumeItem{Resolved pre-testing issues with setup and application requirements}
|
||||
% viable products}
|
||||
%\resumeItem{Resolved pre-testing issues with setup and application
|
||||
% requirements}
|
||||
%\resumeItemListEnd
|
||||
|
||||
\resumeSubheading
|
||||
{Research Intern}{Jun. 2019 -- Dec. 2019}
|
||||
{Maritime Security Center}{Hoboken, NJ}
|
||||
\resumeItemListStart
|
||||
\resumeItem{Created an image classification system with \textbf{OpenCV} to filter out noise and detect buoys in a \textbf{ROS/Gazebo} simulation}
|
||||
\resumeItem{Added mapping functionality to plot obstacles onto a 2D map generated by \textbf{OctoMap}}
|
||||
\resumeItem{Optimized the image classification and mapping frameworks to improve reliability in navigation}
|
||||
\resumeItem{Created an image classification system with
|
||||
\textbf{OpenCV} to filter out noise and detect buoys in a
|
||||
\textbf{ROS/Gazebo} simulation}
|
||||
\resumeItem{Added mapping functionality to plot obstacles onto a 2D
|
||||
map generated by \textbf{OctoMap}}
|
||||
\resumeItem{Optimized the image classification and mapping frameworks
|
||||
to improve reliability in navigation}
|
||||
\resumeItemListEnd
|
||||
|
||||
% Removing this experience as it is not as relevant to the software engineering positions I am applying for and the work was not as technical as my other experiences
|
||||
% Removing this experience as it is not as relevant to the software
|
||||
% engineering positions I am applying for and the work was not as
|
||||
% technical as my other experiences
|
||||
%\resumeSubheading
|
||||
%{Research Intern}{Jul. 2018 -- Aug. 2018}
|
||||
%{Rutgers School of Engineering}{Piscataway, NJ}
|
||||
%\resumeItemListStart
|
||||
%\resumeItem{Used piezoelectric materials to create and detect mechanical waves from \textbf{Arduino} microcontrollers}
|
||||
%\resumeItem{Used piezoelectric materials to create and detect
|
||||
% mechanical waves from \textbf{Arduino} microcontrollers}
|
||||
%\resumeItem{Detected different mediums based on a mechnical wave's travel time}
|
||||
%\resumeItemListEnd
|
||||
|
||||
@@ -218,31 +249,42 @@ Amazon Web Services, Mar. 2024
|
||||
|
||||
% Certifications moved to Technical Skills & Certifications section above
|
||||
|
||||
\section{Projects}
|
||||
\resumeSubHeadingListStart
|
||||
\resumeProjectHeading{SwitchForward}{Jun. 2020 -- Aug. 2020}
|
||||
\resumeItemListStart
|
||||
\resumeItem{A \textbf{Python}-based Telegram bot to send stock updates for the Nintendo Switch during a supply shortage}
|
||||
\resumeItem{Used the Gmail API to receive and parse emails from a Google Group tracking Nintendo Switch stock}
|
||||
\resumeItem{Sent updates to a Telegram announcements channel used by \textbf{5-10} users}
|
||||
\resumeItemListEnd
|
||||
|
||||
\resumeProjectHeading{Autonomous Robot}{Aug. 2018 -- Dec. 2018}
|
||||
\resumeItemListStart
|
||||
\resumeItem{An \textbf{Arduino}-based robot designed to navigate through a maze}
|
||||
\resumeItem{Primarily worked on pathplanning and control in a dynamic setting}
|
||||
\resumeItem{Implemented basic error-correction to account for drift during navigation}
|
||||
\resumeItemListEnd
|
||||
|
||||
% Removing this project as it is not as relevant to the software engineering positions I am applying for
|
||||
% and the work was not as technical as my other experiences
|
||||
%\resumeProjectHeading{Cost-effective Road Anomaly Locator}{Sep. 2016 -- May. 2018}
|
||||
%\section{Projects}
|
||||
%\resumeSubHeadingListStart
|
||||
%\resumeProjectHeading{SwitchForward}{Jun. 2020 -- Aug. 2020}
|
||||
%\resumeItemListStart
|
||||
%\resumeItem{Designed an affordable methodology for implementing and monitoring a unit to detect potholes and other damaging road anomalies with \textbf{65\%} accuracy ($p<0.05$)}
|
||||
%\resumeItem{Assembled and tested units for to collect data and demonstrate effectiveness of the unit}
|
||||
%\resumeItem{Ran several tests and did statistical analysis on the resulting data}
|
||||
%\resumeItem{A \textbf{Python}-based Telegram bot to send stock
|
||||
% updates for the Nintendo Switch during a supply shortage}
|
||||
%\resumeItem{Used the Gmail API to receive and parse emails from a
|
||||
% Google Group tracking Nintendo Switch stock}
|
||||
%\resumeItem{Sent updates to a Telegram announcements channel used by
|
||||
% \textbf{5-10} users}
|
||||
%\resumeItemListEnd
|
||||
%
|
||||
%\resumeProjectHeading{Autonomous Robot}{Aug. 2018 -- Dec. 2018}
|
||||
%\resumeItemListStart
|
||||
%\resumeItem{An \textbf{Arduino}-based robot designed to navigate
|
||||
% through a maze}
|
||||
%\resumeItem{Primarily worked on pathplanning and control in a dynamic setting}
|
||||
%\resumeItem{Implemented basic error-correction to account for drift
|
||||
% during navigation}
|
||||
%\resumeItemListEnd
|
||||
|
||||
% Removing this project as it is not as relevant to the software
|
||||
% engineering positions I am applying for
|
||||
% and the work was not as technical as my other experiences
|
||||
%\resumeProjectHeading{Cost-effective Road Anomaly Locator}{Sep. 2016
|
||||
% -- May. 2018}
|
||||
%\resumeItemListStart
|
||||
%\resumeItem{Designed an affordable methodology for implementing and
|
||||
% monitoring a unit to detect potholes and other damaging road
|
||||
% anomalies with \textbf{65\%} accuracy ($p<0.05$)}
|
||||
%\resumeItem{Assembled and tested units for to collect data and
|
||||
% demonstrate effectiveness of the unit}
|
||||
%\resumeItem{Ran several tests and did statistical analysis on the
|
||||
% resulting data}
|
||||
%\resumeItemListEnd
|
||||
|
||||
%\resumeSubHeadingListEnd
|
||||
|
||||
\resumeSubHeadingListEnd
|
||||
\end{document}
|
||||
|
||||
Reference in New Issue
Block a user