summaryrefslogtreecommitdiff
path: root/cv.latex
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--cv.latex44
1 files changed, 21 insertions, 23 deletions
diff --git a/cv.latex b/cv.latex
index 137d5d9..8374ae7 100644
--- a/cv.latex
+++ b/cv.latex
@@ -1,4 +1,6 @@
1\documentclass[letterpaper]{moderncv} 1\PassOptionsToPackage{unicode}{hyperref}
2
3\documentclass[letterpaper,unicode]{moderncv}
2 4
3\usepackage{bookmark} 5\usepackage{bookmark}
4\usepackage[scale=0.8]{geometry} 6\usepackage[scale=0.8]{geometry}
@@ -12,16 +14,31 @@
12 14
13\address{16905 NW Joscelyn St}{Beaverton, OR 97006-4765} 15\address{16905 NW Joscelyn St}{Beaverton, OR 97006-4765}
14\mobile{+1~503.840.2206} 16\mobile{+1~503.840.2206}
15\email{jblake@omgwallhack.org} 17\email{jblake@jblake.org}
16%\homepage{https://github.com/jblake/} 18%\homepage{https://github.com/jblake/}
17 19
18\begin{document} 20\begin{document}
19 21
20\makecvtitle 22\makecvtitle
21 23
24\section{Professional Experience}
25\cventry{2010---}{Programmer}{Independent Consultant}{}{}{Wrote a customizable Z80 assembler in Haskell for a 200,000 line codebase. Built and tested embedded systems for realtime instrumentation of flight data in C++. Developed Rails web applications and setup a continuous integration and testing framework to ensure quality. Wrote statistical analysis software using R to identify flaws in a manufacturing pipeline.}
26\cventry{2009---2010}{Programmer}{TOVA}{}{}{For TOVA I managed package creation and deployment, as well as worked on a team to verify the correctness of the licensing crypto protocol. I did a small amount of work on their internal wikis and bug tracking systems.}
27\cventry{2006---2009}{Researcher}{Portland State University}{}{}{Academic research on software defined radio systems, control systems for rockets, novel computational architectures, and applications of functional programming and formal correctness to modern systems.}
28\cventry{2003---2006}{Programmer}{Cascadia}{}{}{Specialized in building and maintaining web storefronts for small businesses, primarily with Apache, mod\_perl, and Oracle, but also using Ruby and Java where appropriate. Maintained and designed at all levels of the stack including system administration, database maintenance, backend and frontend programming, and POS systems.}
29\cventry{2002---2003}{Intern}{FEI}{}{}{Worked in VB.NET to build an internal website and fault control systems, as well as statistical fault analysis. In an emergency, I can build an electron microscope from scratch.}
30\cventry{2001---2002}{Intern}{Intel}{}{}{Internal web developer and technical writer for documentation and product manuals.}
31
32\section{Hobby Projects}
33\cvitem{Web Applications}{I've built a number of web applications for my personal use and to stay current with the latest frameworks and technologies.}
34\cvitem{Electronics}{I frequently toy with hobby electronics; most recently, I've been building a mesh of wireless sensor nodes to track the temperature and rainfall in my yard.}
35\cvitem{Type Theory}{Much of my spare time is spent playing with new abstractions and ideas in type theory, trying to learn and build new techniques in typed programming.}
36\cvitem{Disassembly and Reverse Engineering}{I work on projects to understand and build tools for several games. I've built a map generator for Pokémon, various analysis tools for TES games, plugins for Dwarf Fortress and Kerbal Space Program, and more than my fair share of small memory hacks for other games I wanted to tweak the mechanics of.}
37\cvitem{Writing}{I love to read, and in my spare time I work on short stories which are far too unrefined to be publishable.}
38
22\section{Computer Skills} 39\section{Computer Skills}
23\cventry{Functional Programming}{Haskell, ML, Scheme}{}{}{}{Extensive experience and expertise with functional programming languages. I have maintained libraries, built DSLs, implemented compilers, and taught classes.} 40\cventry{Functional Programming}{Haskell, ML, Scheme}{}{}{}{Extensive experience and expertise with functional programming languages. I have maintained libraries, built DSLs, implemented compilers, and taught classes.}
24\cventry{Web Programming}{Perl, Python, Ruby}{}{}{}{I have built and maintained professional web storefronts with both mod\_perl and rails. I have worked extensively with middleware such as XML and XSLT, and while I'm no designer, I know my way around HTML, CSS, and JavaScript. I've used jQuery, bootstrap, and YUI. I've built systems that interoperate using OpenID and SAML, and I can do RESTful design.} 41\cventry{Web Programming}{Perl, Python, Java, Ruby}{}{}{}{I have built and maintained professional web storefronts with mod\_perl, Java, and Rails. I have worked extensively with middleware such as XML and XSLT, and while I'm no designer, I know my way around HTML5, CSS, and JavaScript. I've used jQuery, bootstrap, and YUI. I've built systems that interoperate using OpenID and SAML, and I can do RESTful design.}
25\cventry{Systems Programming}{C, C++}{}{}{}{I understand threading models and can program embedded systems. I've written a hobby operating system that implemented POSIX, and I've worked on high-performance computing. I know enough C++ to be dangerous, and I'm not afraid of templates or the STL.} 42\cventry{Systems Programming}{C, C++}{}{}{}{I understand threading models and can program embedded systems. I've written a hobby operating system that implemented POSIX, and I've worked on high-performance computing. I know enough C++ to be dangerous, and I'm not afraid of templates or the STL.}
26\cventry{Database Programming}{PostgreSQL, Oracle}{}{}{}{I've worked professionally with large replicated databases and PostGIS. I understand data normalization and I've optimized queries for billion-row tables.} 43\cventry{Database Programming}{PostgreSQL, Oracle}{}{}{}{I've worked professionally with large replicated databases and PostGIS. I understand data normalization and I've optimized queries for billion-row tables.}
27\cventry{Formal Correctness}{Coq, Agda, Z}{}{}{}{I can write code that is provably bug-free, and I know when it's appropriate to do so. I've given lectures on dependent typing and correct-by-construction programming. I am also familiar with security analysis of cryptographic protocols and have worked on a team to verify the correctness of a custom protocol.} 44\cventry{Formal Correctness}{Coq, Agda, Z}{}{}{}{I can write code that is provably bug-free, and I know when it's appropriate to do so. I've given lectures on dependent typing and correct-by-construction programming. I am also familiar with security analysis of cryptographic protocols and have worked on a team to verify the correctness of a custom protocol.}
@@ -30,26 +47,7 @@
30\cventry{Statistics and Analysis}{Performance, Data Collection}{}{}{}{I'm a trained mathematician and I can design well-founded experiments to identify performance bottlenecks. I know how to do data collection, and I can work fluently with large data sets in R, Matlab, Octave, and Mathematica.} 47\cventry{Statistics and Analysis}{Performance, Data Collection}{}{}{}{I'm a trained mathematician and I can design well-founded experiments to identify performance bottlenecks. I know how to do data collection, and I can work fluently with large data sets in R, Matlab, Octave, and Mathematica.}
31\cventry{Embedded Systems}{FPGAs, Microcontrollers}{}{}{}{I've designed and deployed FPGAs to solve high-performance problems such as real-time signal filtering. I can write bare-metal programs to run on embedded systems and microcontrollers.} 48\cventry{Embedded Systems}{FPGAs, Microcontrollers}{}{}{}{I've designed and deployed FPGAs to solve high-performance problems such as real-time signal filtering. I can write bare-metal programs to run on embedded systems and microcontrollers.}
32\cventry{Source Control}{Git, Mercurial, Darcs, SVN}{}{}{}{All my code lives in source control; I'm familiar with several systems both conventional and distributed.} 49\cventry{Source Control}{Git, Mercurial, Darcs, SVN}{}{}{}{All my code lives in source control; I'm familiar with several systems both conventional and distributed.}
50\cventry{Continuous Integration}{Jenkins, Maven}{}{}{}{I've worked with and setup continuous integration environments, both ad-hoc and using existing frameworks such as Jenkins and Maven.}
33\cventry{Working Environments}{Linux, MacOS, Windows}{}{}{}{While I'm most comfortable in a Debian operating system, I can work effectively in any of the three major OSes.} 51\cventry{Working Environments}{Linux, MacOS, Windows}{}{}{}{While I'm most comfortable in a Debian operating system, I can work effectively in any of the three major OSes.}
34 52
35\section{Professional Experience}
36\cventry{Cascadia}{Senior Programmer}{}{}{}{I have spent most of my professional career working in web development for Cascadia, a company which specialized in building and maintaining storefronts for small businesses. I have extensive experience in maintaining and designing these systems, at all levels of the stack including system administration, database maintenance, backend and frontend programming, and POS systems.}
37\cventry{TOVA}{Programmer}{}{}{}{For TOVA I managed package creation and deployment, as well as worked on a team to verify the correctness of the licensing crypto protocol. I did a small amount of work on their internal wikis and bug tracking systems.}
38\cventry{Rockwell Collins}{Consultant}{}{}{}{Consulting work as a mathematician, building software to identify flaws in their manufacturing processes, as well as importing data into SolidWorks for accurate modeling of their finished products.}
39\cventry{FlightGear}{Consultant}{}{}{}{Building and testing embedded systems for realtime instrumentation of flight data. Produced formally-correct and verified code as well as an extensive testing framework.}
40\cventry{Portland State University}{Researcher}{}{}{}{I have done academic research at Portland State University on software defined radio systems, control systems for rockets, novel computational architectures, and applications of functional programming and formal correctness to modern systems.}
41\cventry{FEI}{Intern}{}{}{}{I worked at FEI building software for their internal website and fault control systems, as well as statistical fault analysis. In an emergency, I can build an electron microscope from scratch.}
42\cventry{Intel}{Intern}{}{}{}{While in high school I interned at Intel, working primarily as a web developer and technical writer to update documentation and product manuals.}
43
44\section{Amateur Experience}
45\cvitem{Web Applications}{I've built a number of web applications for my personal use and to stay current with the latest frameworks and technologies.}
46\cvitem{Electronics}{I frequently toy with hobby electronics; most recently, I've been building a mesh of wireless sensor nodes to track the temperature and rainfall in my yard.}
47\cvitem{Type Theory}{Much of my spare time is spent playing with new abstractions and ideas in type theory, trying to learn and build new techniques in typed programming.}
48
49\section{Hobbies and Interests}
50\cvitem{Music}{I'm an accomplished pianist, I've played concert hall pipe organs, and I occasionally compose short little ditties.}
51\cvitem{Writing}{I love to read, and in my spare time I work on short stories which are far too unrefined to be publishable.}
52\cvitem{Hiking and Camping}{I regularly go on short camping trips and day hikes around Oregon.}
53\cvitem{Kayaking and Sailing}{I can operate a one-man sailboat, and I love to race kayaks.}
54
55\end{document} 53\end{document}