resume/resume.tex

270 lines
13 KiB
TeX

%______________________________________________________________________________
% @brief LaTeX2e Resume for Jonathan Bernard
\documentclass[margin,line]{resume}
\newenvironment{resplist}{
\begin{list}{\small $\bullet$}{%
\setlength{\itemsep}{0in}
\setlength{\parsep}{0in} \setlength{\parskip}{0in}
\setlength{\topsep}{0in} \setlength{\partopsep}{0in}
\setlength{\leftmargin}{0.2in}}}{\end{list}}
%______________________________________________________________________________
\begin{document}
\name{\Large Jonathan Bernard}
\begin{resume}
%__________________________________________________________________________
% Contact Information
\section{\mysidestyle Contact\\Information}
7703 Windrush Drive \hfill phone : +1 512 777 1602\\
Austin, TX, 78729 \hfill e-mail: jonathan@jdbernard.com
%__________________________________________________________________________
% Personal Brief
\section{\mysidestyle Personal Summary}
\textit{I am a full-stack software engineer with broad experience creating
software at multiple levels of the technology stack. I enjoy the process of
code authorship and care deeply about the long-term quality of the products
I create. The joy of seeing elegant solutions and the impact on the user
are my primary motivations as a developer.}
%__________________________________________________________________________
% Summary of Qualifications
\section{\mysidestyle Languages}
Java, JavaScript, SQL, C\#, Groovy, HTML5, CSS3, Erlang, C/C++, PHP,
XML, XSD, SOAP, WSDL, Visual Basic, \LaTeX, Perl, Ruby, BASH Script,
Lisp
\section{\mysidestyle Technologies}
Node.js, Angular.js, Backbone.js, React.js, SOAP Web Services, J2EE, J2SE,
.NET, JPA, Hibernate, Symmetric and Asymmetric Cryptography, XSLT, Swing,
Grails, Griffon, Spring, Erlang OTP, Require.js, AJAX, jQuery
\section{\mysidestyle Tools}
Git, Maven, Gradle, Gulp, Apache Ant, Make, VI(m), NetBeans, Eclipse,
VisualStudio, MS SqlServer, Apache Ivy, Jersey, Jetty, Apache Tomcat,
Apache httpd, Oracle, PostgreSQL, HSQLDB, H2, SqlLite, MySQL, MongoDB,
LevelDB, Mnesia, VirtualBox, VMWare, Express.js, AWS (EC2,
ElasticBeanstalk, RDS, S3)
%__________________________________________________________________________
% Professional Experience
\section{\mysidestyle Professional\\Experience}
\textbf{Senior Software Engineer} \hfill \textbf{November 2015 -- present}\\
\textbf{Edgecase Inc.}, Austin, TX \\
The engineering team at Edgecase is responsible for all aspects of the
technical infrastructure, product development, and last-line technical
customer support. Because of the small size of the team, I have been
responsible for all aspects of the product we are building:
\begin{resplist}
\item Designing and tuning the persistence solution (PostgreSQL, Redshift,
Redis),
\item Designing and implementing the REST API that powers our web-based
application offering,
\item Performing DevOps responsibilities wrt. our deployed environments on
AWS,
\item Direct implementation of the web-based application that is the gateway
to our primary product,
\item Mentoring junior devs and being responsible for overall code
quality.
\end{resplist}
\textbf{Software Engineer VI} \hfill \textbf{October 2013 -- October 2015}\\
\textbf{3M (contract via. Maxis Group)}, Austin, TX \\
I was the lead developer responsible for all front-end development across
3M's new tolling solution as well as the lead responsible for the back-end
implementation several of the micro-services that make up the solution. I am
also fulfilling many of the DevOps needs of the team. In addition to direct
implementation my responsibilities in this role included:
\begin{resplist}
\item Technical ownership of all front-end architecture and development
practices.
\item Mentoring and teaching junior developers. Several of our team members
were new to Backbone.js and to core JavaScript.
\item Technical leadership and oversight of four on-site developers and
three off-shore teams of developers.
\item Communication with our customers regarding project requirements and
capabilities. I have been responsible on several occasions for explaining
to our customers the architecture of our solution and the benefits they can
expect to see when using it.
\item Setup and administration of the team's central git repository (using
GOGS).
\item Authoring and supporting the release process and version control
scheme used by the team to deliver builds of the solution to QA and other
internal customers.
\end{resplist}
%\vspace{60mm}
Previous to this project I was responsible for maintaining existing
production software. Responsibilities included:
\begin{resplist}
\item Maintaining our internal time-tracking tools used by multiple 3M
departments, spanning roughly 800 people.
\item Leading the design and implementation of a fundamental
architectural change to the time-tracking tool, extending it to work
transparently for multiple divisions. It originally had no concept of
multiple divisions.
\vspace{60mm}
\item Maintaining a very old (20+ years) facility management product still
in regular use by customers. This was a unique challenge as the project
integrates components written in over 8 different languages, C being the
most common, and C\# .NET being the most recent. It also required expertise
in embedded hardware control.
\end{resplist}
\textbf{Staff Engineer} \hfill \textbf{February 2012 -- September 2013}\\
\textbf{HID Global (Personalization Infrastructure)}, Austin, TX \\
My team was responsible for all the software controlling and supporting the
production process, ranging from low-level machine control and automation
to the server-oriented infrastructure that supplied production services
(key management, product configuration, etc.). Some of my specific
responsibilities included:
\begin{resplist}
\item Developing the machine control software for the next generation of
production machines. This project required close cooperation with an
international vendor.
\item Writing production scripts to load product and customer-specific
applications and data onto the secured product (ranging from simple memory
cards to highly secured smart cards).
\item Writing and maintaining library code used by our scripting platform
to perform cryptographic authentication and secure communication with
smart cards following the GlobalPlatform specification.
\item Supporting production services. This includes troubleshooting service
outages, machine operations, and software defects in the final product.
\item Developing an IDE (based on SharpDevelop) for the in-house scripting
language used to control and program the product.
\end{resplist}
\textbf{Systems Developer} \hfill \textbf{August 2010 -- February 2012}\\
\textbf{QuantumDigital Inc.}, Austin, TX \\
Responsible for supporting the legacy order and fulfillment systems and
migrating these systems to modern technology. Some achievements:
\begin{resplist}
\item Developing a Java library to interface directly with legacy
FoxPro table files.
\item Creating several tools to reduce the time spent managing support
requests made of the development team.
\item Participating in the planning and design of the next generation
of the core order placement and fulfillment software
(see \texttt{http://quantumpostcards.com}).
\item Designing and developing the companies first mobile application, with
one other coworker. This was an effort to expand the companies visibility
in the market and establish a mobile presence (see
\texttt{http://quantumdigital.com/qcards}).
\end{resplist}
\textbf{Software Architect and Developer} \hfill \textbf{June 2005 -- August 2010}\\
\textbf{Gemalto Inc. (Solutions and Special Projects)}, Austin, TX \\
Responsible for finding solutions to new problems, developing custom
customer solutions, and providing tools and support to other development
teams. Some specific tasks in this position included:
\begin{resplist}
\item Designing and implementing a generic SOAP-based Web Service framework
for secure online order placement and implementing custom services using
this framework for multiple customers. Among the requirements was
compliance with the WS-Interoperability standard and security according to
the WS-Security standard.
\item Setup and maintenance of in-house database, cryptographic, and
general-purpose servers, including the implementation of a custom,
hardware based cryptographic server.
\item Designing and developing generic, extensible database reporting
software used in production environments worldwide.
\item Performing training for coworkers locally and internationally on
topics ranging from industry best-practice to expertise with solutions
developed in-house.
\item Participating in the design and leading the implementation of the
production database systems used in the manufacture of the U.S. e-Passport.
\item Developing several tools used in-house by personalization engineers.
\end{resplist}
\vspace{60mm}
\textbf{Summer Intern / Contractor} \hfill \textbf{June 2004 -- Oct 2004}\\
\textbf{Freescale Semiconductor (Hardware/Software Development)}, Austin, TX \\
Notable accomplishments included:
\begin{resplist}
\item Developing hardware diagnostics scripts pertaining to Intel 31154 PCI
bridge chip, DDR memory test.
\item Performing schematic capture activities using Mentor's Design
Architect. Assistance helped to accelerate and beat schedule requirements.
\item Designing high quality schematic symbols for use by the hardware
design community.
\item Misc. endeavors - Assisting lab technicians in customer shipments.
\end{resplist}
%__________________________________________________________________________
% Ongoing Personal Development
\section{\mysidestyle Personal Development}
Software engineering continues to be a passion of mine that extends beyond
the work I have done for employers over the years. Some of my favorite
projects have been:
\begin{resplist}
\item Creating a system to manage the real-time logistics of a church's
Vacation Bible School. This tool is used primarily by non-technical
volunteers and has received praise for its ease-of-use and for increasing
productivity.
The next generation of this tool is being beta-tested for this year's VBS
program. This version of the tool is web-based. It is built on an Erlang
back-end, an HTML5 and JavaScript front-end based on React.js, and it
exposes a RESTful API which is used internally by the front-end.
\item Developing a new documentation tool, \texttt{jlp}, to apply the
principles of Literate Programming with the abilities of modern-day
documentation tools (like \texttt{javadoc}). This allows code and
documentation to be effectively co-located in source files.
Though this project is still in its early stages, it is used for all of my
personal projects. You can browse the code at
\texttt{http://github.com/jdbernard/jlp}
\end{resplist}
%__________________________________________________________________________
% Education
\section{\mysidestyle Education}
\textbf{University of Texas at Austin}, Austin, TX\\
100+ hours completed towards a B.S. in Computer Science
%__________________________________________________________________________
% Referees
% \section{\mysidestyle Referees}
% {\sl Available on request.}
%______________________________________________________________________________
%\section{\mysidestyle Referees}
%
%\begin{tabular}{@{}p{6cm}p{6cm}}
%\textbf{Ben Benson} & \textbf{Mridul Sharma} \\
%Sr. Solutions Arhchitect, Tech. Lead & Regional Engineering Manager \\
%Traffic Safety and Services & Personalization and Services \\
%3M, Austin TX & Gemalto Inc., Austin, TX \\
%\end{tabular}
%
%\begin{tabular}{@{}p{6cm}p{6cm}}
%\textbf{Rodney Shaw} & \textbf{Robert Spellings} \\
%Pastor & Email Marketing and Deliverability \\
%New Life United Pentecostal Church & QuantumDigital Inc. \\
%Austin, TX & Austin, TX \\
%\end{tabular}\\
%\newline
%\hspace*{1in} \textit{contact information available on request}
%
%______________________________________________________________________________
\end{resume}
\end{document}
%______________________________________________________________________________
% EOF