Compare commits

..

1 commit

Author SHA1 Message Date
Gabe Venberg 8b30ecbff1 fixed typos, re-indented 2024-02-02 15:41:02 -06:00
6 changed files with 180 additions and 264 deletions

1
.envrc
View file

@ -1 +0,0 @@
use flake

3
.gitignore vendored
View file

@ -1,9 +1,6 @@
# Created by https://www.gitignore.io/api/latex # Created by https://www.gitignore.io/api/latex
# Edit at https://www.gitignore.io/?templates=latex # Edit at https://www.gitignore.io/?templates=latex
# direnv
.direnv
*.pdf *.pdf
### LaTeX ### ### LaTeX ###

View file

@ -1,61 +0,0 @@
{
"nodes": {
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1711163522,
"narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4",
"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
}

View file

@ -1,22 +0,0 @@
{
description = "A very basic flake";
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;};
in
with pkgs; {
devShells.default = mkShell {
buildInputs = [texliveFull];
};
});
}

View file

@ -1,2 +0,0 @@
preview:
latexmk -pdf -pvc

View file

@ -16,203 +16,208 @@
% format two pieces of text, one left aligned and one right aligned % format two pieces of text, one left aligned and one right aligned
\newcommand{\experience}[4]{ \newcommand{\experience}[4]{
\begin{tabularx}{\textwidth}{L R} \begin{tabularx}{\textwidth}{L R}
\multicolumn{2}{p{\textwidth}}{\textbf{#1}}\\ \multicolumn{2}{p{\textwidth}}{\textbf{#1}}\\
\textsc{#2} & #3 \\ \textsc{#2} & #3 \\
\hline \hline
\multicolumn{2}{p{\textwidth}}{#4} \multicolumn{2}{p{\textwidth}}{#4}
\end{tabularx} \end{tabularx}
} }
\begin{document} \begin{document}
\pagestyle{empty}%non numbered pages \pagestyle{empty}%non numbered pages
\section*{Gabe Venberg} \section*{Gabe Venberg}
\begin{tabular}{r l} \begin{tabular}{r l}
%\textsc{Address:} & 1005 7th Ave N Fargo ND 58102\\ %\textsc{Address:} & 1005 7th Ave N Fargo ND 58102\\
\textsc{Phone:} & (218) 517-0917\\ \textsc{Phone:} & (218) 517-0917\\
\textsc{Email:} & \href{mailto:gabevenberg@gmail.com}{gabevenberg@gmail.com}\\ \textsc{Email:} & \href{mailto:gabevenberg@gmail.com}{gabevenberg@gmail.com}\\
\textsc{Website:} & \href{gabevenberg.com}{gabevenberg.com}\\ \textsc{Website:} & \href{gabevenberg.com}{gabevenberg.com}\\
\textsc{GitHub:} & \href{https://github.com/gabevenberg}{github.com/gabevenberg}\\ \textsc{GitHub:} & \href{https://github.com/gabevenberg}{github.com/gabevenberg}\\
\textsc{Personal Git server:} & \href{https://git.venberg.xyz/Gabe}{git.venberg.xyz/Gabe}\\ \textsc{Personal Git server:} & \href{https://git.venberg.xyz/Gabe}{git.venberg.xyz/Gabe}\\
\end{tabular} \end{tabular}
\section*{Work Experience} \section*{Work Experience}
\experience \experience
{John Deere} {John Deere}
{Embedded Linux Engineer} {Embedded Linux Engineer}
{August 2023--current} {August 2023--current}
{ {
\begin{itemize} \begin{itemize}
\item Develop Linux distributions for embedded systems with Yocto \item Develop Linux distributions for embedded systems with Yocto
\item Develop Linux hardware drivers for embedded system \item Develop Linux hardware drivers for embedded system
\item Use Git to collaborate across teams \item Develop python based Hardware In the Loop testing
\end{itemize} \item Use Git to collaborate across teams
} \end{itemize}
\experience }
{Appareo Systems} \experience
{Embedded Systems Intern} {Appareo Systems}
{Summer 2023} {Embedded Systems Intern}
{ {Summer 2023}
\begin{itemize} {
\item Implemented and ran functional testing on embedded Linux product, including designing test fixtures using Raspberry Pis to automate testing of electrical properties and RF connectivity \begin{itemize}
\item Maintained part numbers for a number of vendor-supplied firmware images, including validating new firmware, assigning new part numbers, and curating internal firmware image library. \item Implemented and ran functional testing on embedded Linux product,
\end{itemize} including designing test fixtures using Raspberry Pis to automate testing of electrical properties and RF connectivity
} \end{itemize}
}
\experience \experience
{Kata Containers} {Kata Containers}
{Capstone Student} {Capstone Student}
{Spring Semester 2023} {Spring Semester 2023}
{ {
\begin{itemize} \begin{itemize}
\item Implemented a Rust-based log parser for the Kata Containers project, including writing unit tests, integrating the tool with existing codebase, and implementing suggestions from code reviewers. \item Implemented a Rust-based log parser for the Kata Containers project,
\item Collaborated using the GitHub workflow, chat rooms, and video chat remotely and across 8+hr timezone difference. including writing unit tests, integrating the tool with existing codebase,
\end{itemize} and implementing suggestions from code reviewers.
} \item Collaborated using the GitHub workflow, chat rooms,
and video chat remotely and across 8+hr timezone difference.
\end{itemize}
}
\experience \experience
{Corvent Medical} {Corvent Medical}
{Software Engineering Intern} {Software Engineering Intern}
{Summer 2022} {Summer 2022}
{ {
\begin{itemize} \begin{itemize}
\item Wrote python scripts to translate requirements from word documents into format understood by a propriatary requirements analysis tool. \item Wrote python scripts to translate requirements from word documents into a
\item Performed requirements analysis, wrote and performed software and hardware test procedures, and analyzed test coverage to enable regulatory approval of new medical device. format understood by a propriatary requirements analysis tool.
\end{itemize} \item Performed requirements analysis, wrote and performed software and hardware test procedures,
} and analyzed test coverage to enable regulatory approval of new medical device.
\end{itemize}
}
\experience \experience
{ByteSpeed} {ByteSpeed}
{Computer Technician} {Computer Technician}
{Summer 2021} {Summer 2021}
{ {
\begin{itemize} \begin{itemize}
\item Performed troubleshooting and repair on warrantied computers. \item Performed troubleshooting and repair on warrantied computers.
\item Helped customers with a variety of problems over email, phone, and instant messaging. \item Helped customers with a variety of problems over email, phone, and instant messaging.
\end{itemize} \end{itemize}
} }
\experience \experience
{NDSU Precision Agriculture Center} {NDSU Precision Agriculture Center}
{Developer} {Part Time Developer}
{2020--2021} {2020--2021}
{ {
\begin{itemize} \begin{itemize}
\item Implemented methods of preprocessing LIDAR data with python for a project to predict crop yield using machine learning. \item Implemented methods of preprocessing LIDAR data with python for a project to predict crop yield using machine learning.
\end{itemize} \end{itemize}
} }
\experience \experience
{Integrating Networking} {Integrating Networking}
{Tier 1 and 2 Tech} {Tier 1 and 2 Tech}
{2019--2020} {2019--2020}
{ {
\begin{itemize} \begin{itemize}
\item Performed troubleshooting, repairs, and upgrades on customer computers. \item Performed troubleshooting, repairs, and upgrades on customer computers.
\item Performed network setup for institutional and home networks. \item Performed network setup for institutional and home networks.
\item Estimated cost of customer solutions, including researching and comparing price across vendors. \item Estimated cost of customer solutions, including researching and comparing price across vendors.
\item Implemented a variety of more complex `one off' projects for clients with specific needs. \item Implemented a variety of more complex `one off' projects for clients with specific needs.
\end{itemize} \end{itemize}
} }
\section*{Education} \section*{Education}
\experience \experience
{NDSU---Fargo, North Dakota} {NDSU---Fargo, North Dakota}
{BS in Computer Science} {BS in Computer Science}
{Graduated 2023} {Graduated 2023}
{} {}
\experience \experience
{Alexandria Community College---Alexandria, Minnesota} {Alexandria Community College---Alexandria, Minnesota}
{General Ed Associates Degree} {General Ed Associates Degree}
{Graduated 2020} {Graduated 2020}
{} {}
\begin{minipage}{\linewidth} \begin{minipage}{\linewidth}
\section*{Technology Skills} \section*{Technology Skills}
\begin{tasks}[style=itemize](3) \begin{tasks}[style=itemize](3)
\task Rust \task Rust
\task Python \task Python
\task Java \task Java
\task Bash \task Bash
\task Git version control system \task C
\task Web Scraping \task Git version control system
\task Linux administration \task Linux administration
\task Embedded Linux \task Embedded Linux
\task Network administration \task Network administration
\task NGINX and Apache web servers \task Computer repair
\task SSH remote management \task \LaTeX{} markup language
\task VM management \task Googling
\task Computer repair \end{tasks}
\task \LaTeX{} markup language
\task Googling
\end{tasks}
\end{minipage} \end{minipage}
\section*{Other Experience} \section*{Other Experience}
\experience \experience
{Homelab} {Homelab}
{Home Linux Lab} {Home Linux Lab}
{2019--present} {2019--present}
{ {
Run a home network consisting of 2 physical servers and 6 Virtual machines doing a variety of tasks, such as a DNS, an NGINX reverse proxy, and several web servers serving static and dynamic content. Currently running: Nextcloud, GitTea, PiHole, Mainsail, and a static website. Run a home network consisting of 2 physical servers and 6 virtual machines doing a variety of tasks,
} such as a DNS, an NGINX reverse proxy, and several web servers serving static and dynamic content.
Currently running: Nextcloud, GitTea, PiHole, Mainsail, and a static website.
\experience }
{Open Source Development}
{Contributor to various open source projects}
{2022--present}
{
Have contributed patches of a variety of sizes to open source projects including Python and Kata Containers.
}
\experience \experience
{National Cyber League} {Open Source Development}
{Four-time competitor in the National Cyber League.} {Contributor to various open source projects}
{2021, '22, and '23} {2022--present}
{ {
Competed for NDSU in the bi-annual National Cyber League in individual and team games, placing in the top 500 individuals and top 200 teams nationwide for three competitions. Have contributed patches of a variety of sizes to open source projects including Python and Kata Containers.
} }
\experience
{National Cyber League}
{Four-time competitor in the National Cyber League.}
{2021, '22, and '23}
{
Competed for NDSU in the bi-annual National Cyber League in individual and team games,
placing in the top 500 individuals and top 200 teams nationwide for three competitions.
}
\newpage \newpage
% \section*{keywords} % \section*{keywords}
% {\small % {\small
% If you, a human, are reading this, you don't have to. This is just a list of keywords that the automated filters always want, but are either just alternate wordings of things already on the resume, are in places of the resume that I have found parsers have trouble with, or are trivial (like office experience). All keywords \emph{are} applicable to me. % If you, a human, are reading this, you don't have to. This is just a list of keywords that the automated filters always want, but are either just alternate wordings of things already on the resume, are in places of the resume that I have found parsers have trouble with, or are trivial (like office experience). All keywords \emph{are} applicable to me.
% \tiny % \tiny
% \begin{tasks}[style=itemize](5) % \begin{tasks}[style=itemize](5)
% \task Java % \task Java
% \task Python % \task Python
% \task Rust % \task Rust
% \task Scientific data processing % \task Scientific data processing
% \task Web Scraping % \task Web Scraping
% \task Linux BASH scripting. % \task Linux BASH scripting.
% \task Linux / UNIX command line % \task Linux / UNIX command line
% \task Linux / UNIX administration % \task Linux / UNIX administration
% \task Network Administration % \task Network Administration
% \task NGINX reverse proxies % \task NGINX reverse proxies
% \task NGINX and Apache experience % \task NGINX and Apache experience
% \task SSH remote management % \task SSH remote management
% \task Proxmox % \task Proxmox
% \task Virtual Machine % \task Virtual Machine
% \task Computer maintenance and repair % \task Computer maintenance and repair
% \task LaTeX document markup language. % \task LaTeX document markup language.
% \task Microsoft Word % \task Microsoft Word
% \task Microsoft Excel % \task Microsoft Excel
% \task Word Processing % \task Word Processing
% \task Communication % \task Communication
% \task Customer Support % \task Customer Support
% \task Cyber Security % \task Cyber Security
% \task Agile % \task Agile
% \task Waterfall % \task Waterfall
% \task Software Testing % \task Software Testing
% \task Backup % \task Backup
% \task VPN % \task VPN
% \task Phishing % \task Collaboration
% \task Collaboration % \task Spreadsheet
% \task Spreadsheet % \task git
% \task git % \task version control
% \task version control % \task VCS
% \task VCS % \task leadership
% \task leadership % \end{tasks}
% \end{tasks} % }
% }
\end{document} \end{document}