mirror of https://git.jolheiser.com/resume.git
parent
d9d6af1dea
commit
8a7c3d32c1
|
@ -0,0 +1,2 @@
|
|||
resume.pdf
|
||||
resume.png
|
|
@ -0,0 +1,3 @@
|
|||
My resume, built in both [LaTeX](https://www.latex-project.org/) and [Typst](https://typst.app/docs/).
|
||||
|
||||
Typst will be the most up-to-date as it supersedes LaTeX.
|
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1697383814,
|
||||
"narHash": "sha256-NoGJsi8R4GyQX6GHJS9lIXyrbrybqyqA8v6HVixHs5E=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9606c209b83b772aea897eeb1468aec9d21033c3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"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
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
flake-utils,
|
||||
nixpkgs,
|
||||
}:
|
||||
flake-utils.lib.eachDefaultSystem (
|
||||
system: let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
in {
|
||||
packages.default = pkgs.stdenv.mkDerivation {
|
||||
pname = "resume";
|
||||
version = "typst";
|
||||
src = ./.;
|
||||
nativeBuildInputs = with pkgs; [
|
||||
typst
|
||||
raleway
|
||||
];
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
mkdir -p $out/share
|
||||
export TYPST_FONT_PATHS=${pkgs.raleway}/share/fonts
|
||||
typst compile resume.typ $out/share/resume.pdf
|
||||
typst compile resume.typ $out/share/resume.png
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
};
|
||||
devShells.default = pkgs.mkShell {
|
||||
nativeBuildInputs = with pkgs; [
|
||||
typst
|
||||
raleway
|
||||
];
|
||||
shellHook = ''
|
||||
export TYPST_FONT_PATHS=${pkgs.raleway}/share/fonts
|
||||
'';
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
|
@ -0,0 +1,169 @@
|
|||
#set page(paper: "us-letter", margin: .5in)
|
||||
#set text(size: 10pt, font: ("raleway"))
|
||||
#set table(
|
||||
stroke: none,
|
||||
inset: 3pt,
|
||||
columns: (70%, 30%),
|
||||
align: (x, y) => (left, right).at(x),
|
||||
)
|
||||
#set list(
|
||||
spacing: 5pt,
|
||||
indent: 15pt,
|
||||
marker: strong[•],
|
||||
)
|
||||
|
||||
// Header
|
||||
#show heading: it => [
|
||||
#set text(25pt)
|
||||
#block(below: 5pt, it.body)
|
||||
]
|
||||
|
||||
#align(
|
||||
center,
|
||||
)[
|
||||
= #smallcaps[John Olheiser] \
|
||||
#link(
|
||||
"mailto:john.olheiser@gmail.com",
|
||||
)[#underline(offset: 4pt)[john.olheiser\@gmail.com]]
|
||||
$bar.v$ 701-425-6883$bar.v$
|
||||
#link(
|
||||
"https://www.linkedin.com/in/jolheiser/",
|
||||
)[#underline(offset: 4pt)[linkedin.com/in/jolheiser]]
|
||||
]
|
||||
|
||||
// Body
|
||||
#show heading: it => [
|
||||
#set text(13pt, weight: "regular")
|
||||
#block(
|
||||
height: 14pt,
|
||||
width: 100%,
|
||||
stroke: (bottom: 1pt),
|
||||
above: 10pt,
|
||||
below: 5pt,
|
||||
smallcaps(it.body),
|
||||
)
|
||||
]
|
||||
#show table: it => [
|
||||
#block(below: 4pt, it)
|
||||
]
|
||||
|
||||
== Education
|
||||
<education>
|
||||
#table(
|
||||
[#strong[Bachelors of Science in Computer Information
|
||||
Systems]],
|
||||
[#align(right)[Graduated August 2014]],
|
||||
[#emph[University of Mary]],
|
||||
[#emph[Bismarck, ND]],
|
||||
)
|
||||
|
||||
== Professional Experience
|
||||
<professional-experience>
|
||||
#table(
|
||||
[#strong[North Dakota Legislative Assembly]],
|
||||
[July 2021 - Current],
|
||||
[#emph[Software Development Engineer]],
|
||||
[#emph[Bismarck, ND]],
|
||||
)
|
||||
|
||||
- Increased application resiliency by replacing
|
||||
manual testing and deployment processes with
|
||||
automated continual integration, testing, and
|
||||
deployment pipelines.
|
||||
|
||||
- Enabled faster and safer development of new
|
||||
features utilizing internal APIs through the
|
||||
creation of API client wrappers in Java and
|
||||
Python.
|
||||
|
||||
- Improved developer experience and iteration time
|
||||
by creating new internal CLI tooling using Go.
|
||||
|
||||
#table(
|
||||
[#emph[Programmer Analyst II]],
|
||||
[#emph[September 2017 - July 2021]],
|
||||
)
|
||||
|
||||
- Created legislative bill tracking system allowing
|
||||
users to curate and track the status of bills from
|
||||
mobile devices using Typescript, Angular, and
|
||||
Java.
|
||||
|
||||
- Enabled legislative body to receive remote
|
||||
testimony by creating new testimony web
|
||||
application using Python, Django, and PostgreSQL.
|
||||
|
||||
- Coordinated migration of legacy Python 2
|
||||
applications to Python 3 while maintaining
|
||||
application support.
|
||||
|
||||
#table(
|
||||
[#emph[Programmer Analyst I]],
|
||||
[#emph[January 2014 - September 2017]],
|
||||
)
|
||||
|
||||
- Improved the ability of state social workers to
|
||||
provide assistance by building evaluation and note
|
||||
taking application using Java, Spring, and MySQL.
|
||||
|
||||
- Lead effort to reduce vulnerabilities and improve
|
||||
development velocity by upgrading critical
|
||||
applications from Java 6 to Java 9.
|
||||
|
||||
- Modernized team’s source control handling by
|
||||
leading effort to migrate source code from
|
||||
ClearCase and Subversion repositories to Git.
|
||||
|
||||
== Open Source Experience
|
||||
<open-source-experience>
|
||||
#table(
|
||||
[#strong[Gitea]],
|
||||
[January 2019 - Current],
|
||||
[#emph[Technical Oversight Committee Member]],
|
||||
[#emph[#link("https://gitea.com/")[gitea.com]]],
|
||||
)
|
||||
|
||||
- Core maintainer of the Gitea project, a Go based
|
||||
open source self hosted git frontend and tooling
|
||||
ecosystem.
|
||||
|
||||
- Enhanced ability of users to listen for specific
|
||||
event data when a repository changes through the
|
||||
implementation of a webhook based event system.
|
||||
|
||||
- Resolved security vulnerabilities through
|
||||
application of security patches and implementing
|
||||
automated security checks on codebase.
|
||||
|
||||
#table(
|
||||
[#strong[WoodpeckerCI]],
|
||||
[October 2021 - Current],
|
||||
[#emph[Contributor]],
|
||||
[#emph[#link(
|
||||
"https://woodpecker-ci.org/",
|
||||
)[woodpecker-ci.org]]],
|
||||
)
|
||||
|
||||
- Contributor to Woodpecker CI, an open source,
|
||||
extensible, continuous integration tool for teams
|
||||
to automate build, testing, and deployment
|
||||
pipelines.
|
||||
|
||||
- Lead effort to allow clients to more accurately
|
||||
track changes in their woodpecker instances
|
||||
through refactoring of logging system.
|
||||
|
||||
- Improved end-user experience and onboarding by
|
||||
creating and improving documentation for
|
||||
woodpecker CLI
|
||||
|
||||
= Technical Skills
|
||||
<technical-skills>
|
||||
#block[
|
||||
#strong[Languages:] Java, Go, C\#, Python, SQL,
|
||||
Javascript, Typescript\
|
||||
#strong[Technologies:] Git, Docker, S3, Angular\
|
||||
#strong[Other Knowledge:] Continuous Integration,
|
||||
Continuous Deployment, Debugging, Test Driven
|
||||
Development, HTML, CSS, REST
|
||||
]
|
Loading…
Reference in New Issue