Updated resume for post-SailPoint job search.
This commit is contained in:
parent
de4af479f8
commit
b90de84e6e
201
resume2.tex
201
resume2.tex
@ -19,91 +19,136 @@
|
|||||||
\section{\mysidestyle Contact\\Information}
|
\section{\mysidestyle Contact\\Information}
|
||||||
|
|
||||||
7703 Windrush Drive \hfill phone : +1 512 777 1602\\
|
7703 Windrush Drive \hfill phone : +1 512 777 1602\\
|
||||||
Austin, TX, 78729 \hfill e-mail: jdbernard@gmail.com
|
Austin, TX, 78729 \hfill e-mail: jonathan@jdbernard.com
|
||||||
|
|
||||||
%__________________________________________________________________________
|
%__________________________________________________________________________
|
||||||
% Personal Brief
|
% Personal Brief
|
||||||
\section{\mysidestyle Personal Summary}
|
\section{\mysidestyle Personal Summary}
|
||||||
\textit{I am a senior full-stack software engineer with proven experience
|
\textit{I am a full-stack software engineer with broad experience creating
|
||||||
across many layers of the stack. I have a strong background in applied
|
software at multiple levels of the technology stack. I enjoy the process of
|
||||||
software solutions and cryptographic systems. I am looking for a team of
|
code authorship and care deeply about the long-term quality of the products
|
||||||
people who share my passion for solving problems with software solutions
|
I create. The joy of seeing elegant solutions and the impact on the user
|
||||||
that are correct, maintainable, and understandable.}
|
are my primary motivations as a developer.}
|
||||||
|
|
||||||
%__________________________________________________________________________
|
%__________________________________________________________________________
|
||||||
% Summary of Qualifications
|
% Summary of Qualifications
|
||||||
\section{\mysidestyle Summary of Qualifications}
|
\section{\mysidestyle Summary of Qualifications}
|
||||||
|
|
||||||
\textbf{Programming Languages}\\
|
\textbf{Programming Languages}\\
|
||||||
Java, Groovy, C\#, JavaScript, C/C++, Erlang, PHP, Lisp, Boo, Ruby,Perl, BASH,
|
Java, JavaScript, Groovy, C\#, C/C++, Erlang, Nim, Ruby, PHP, Lisp,
|
||||||
HTML5, CSS3, XML, XSD, Visual Basic, \LaTeX, Markdown
|
Perl, Python, BASH, HTML5, CSS3, XML, XSD, \LaTeX
|
||||||
|
|
||||||
\textbf{Frameworks \& Libraries}\\
|
\textbf{Frameworks \& Libraries}\\
|
||||||
\textsl{Server-side}: Jersey (Java REST framework), Grails, Spring
|
\textsl{Server-side}: Express.js, JAX-RS, Grails, Spring Framework,
|
||||||
Framework, ASP.NET, JSF, Ruby on Rails \\
|
ASP.NET, JSF, Ruby on Rails \\
|
||||||
\textsl{In-browser}: Backbone.js, Underscore.js, Require.js, jQuery,
|
\textsl{In-browser}: Angular 1, React.js, Backbone.js, jQuery,\\
|
||||||
\textsl{many more JS libraries} \\
|
\textsl{Data Processing}: Amazon Kinesis, Apache Flink
|
||||||
\textsl{Desktop \& Others}: Griffon, WPF, WinForms, MFC, Swing \\
|
|
||||||
|
|
||||||
\textbf{Web Technologies}\\
|
\textbf{Web Technologies}\\
|
||||||
HTTP, REST, WebSockets, SOAP, WSDL
|
HTTP, REST, WebSockets, SOAP, WSDL
|
||||||
|
|
||||||
\textbf{Development \& Testing Tools}\\
|
\textbf{Development \& Testing Tools}\\
|
||||||
Git, mercurial, Apache Ant and Gant, Apache Ivy, Apache Maven, Gradle,
|
Git, Gradle, Apache Ant and Gant, Apache Ivy, Apache Maven, Jenkins,
|
||||||
Jenkins, JUnit (xUnit, EUnit), Cucumber\\
|
JUnit (xUnit, EUnit), Cucumber
|
||||||
|
|
||||||
\textbf{Systems and Tools}\\
|
\textbf{Systems and Tools}\\
|
||||||
\textsl{Servers and Containers}: Apache httpd, nginx, Tomcat, Jetty,
|
\textsl{Servers and Containers}: Docker, Apache httpd, nginx, Tomcat, Jetty,
|
||||||
Glassfish, YAWS, IIS\\
|
Glassfish, YAWS, AWS ECS\\
|
||||||
\textsl{OS's}: Linux (\textit{esp. Ubuntu, Debian, and Red Hat
|
\textsl{OS's}: Linux (\textit{esp. Ubuntu, AWS AMI, Debian, and Red Hat
|
||||||
distros.}), OpenBSD, Windows (\textit{all versions})
|
distros.}), OpenBSD, Windows (\textit{all versions})\\
|
||||||
|
\textsl{Experienced with large portions of Amazon's AWS offerings.}
|
||||||
|
|
||||||
\textbf{Databases}\\
|
\textbf{Databases}\\
|
||||||
\textsl{RDBMS}: SQL, PostgreSQL, MS SqlServer, Oracle, MySQL, HSQLDB, SqlLite \\
|
\textsl{RDBMS}: SQL, PostgreSQL, AWS RDS, MS SqlServer, Oracle, MySQL, HSQLDB, SqlLite \\
|
||||||
\textsl{NoSQL}: CouchDB, MongoDB, Mnesia
|
\textsl{NoSQL}: AWS DynamoDB, MongoDB, AWS Redshift, Mnesia, LevelDB, CouchDB,
|
||||||
|
|
||||||
\textbf{IDEs \& Environments}\\
|
\textbf{IDEs \& Environments}\\
|
||||||
VI(m), Eclipse, VisualStudio, NetBeans, Appcelerator Titanium Studio
|
VI(m), Eclipse, VisualStudio, NetBeans
|
||||||
|
|
||||||
%__________________________________________________________________________
|
%__________________________________________________________________________
|
||||||
% Professional Experience
|
% Professional Experience
|
||||||
\section{\mysidestyle Professional\\Experience}
|
\section{\mysidestyle Professional\\Experience}
|
||||||
|
|
||||||
\textbf{Software Engineer VI} \hfill \textbf{October 2013 -- present}\\
|
\textbf{Staff Software Engineer} \hfill \textbf{May 2017 -- present}\\
|
||||||
|
\textbf{SailPoint Inc. (IdentityAI)}, Austin, TX \\
|
||||||
|
IdentityAI is a new SaaS product offering from SailPoint that adds
|
||||||
|
intelligent analytics to the governance and identity assurance data created
|
||||||
|
by their IdentityNow and IdentityIQ products. A small team was created with
|
||||||
|
a startup mentality to bring an MVP to market. SailPoint heavily leverages
|
||||||
|
AWS for it's production, development, and QA environments. As part of this
|
||||||
|
team I have been directly responsible for:
|
||||||
|
\begin{resplist}
|
||||||
|
\item Operational automation of data ingestion: automated provisioning,
|
||||||
|
configuration, management, and operation of data harvesters (cloud and
|
||||||
|
on-prem) using Docker, AWS SQS, Kinesis Firehose, and DynamoDB.
|
||||||
|
\item Implementation and maintenance of the data pipeline (Flink)
|
||||||
|
\item Designing and implementing the infrastructure to support
|
||||||
|
productization of data analytics performed by data scientists (Flink).
|
||||||
|
\item Participating in the design and implementation of data-mapping
|
||||||
|
configuration.
|
||||||
|
\item Implementation of the REST APIs across all the services that make up
|
||||||
|
the product. This includes servicing the UI, other internal services, and
|
||||||
|
aforementioned harvester infrastructure.
|
||||||
|
\end{resplist}
|
||||||
|
\textsl{Key technologies:} Java, JAX-RS, Apache Flink, Docker, AWS (esp. Kinesis,
|
||||||
|
DynamoDB), JavaScript, MySQL (in RDS)
|
||||||
|
|
||||||
|
\vspace{60mm}
|
||||||
|
|
||||||
|
\textbf{Senior Software Engineer} \hfill \textbf{November 2015 -- April 2017}\\
|
||||||
|
\textbf{Edgecase Inc.}, Austin, TX \\
|
||||||
|
The engineering team at Edgecase was responsible for all aspects of the
|
||||||
|
technical infrastructure, product development, and last-line technical
|
||||||
|
customer support. In this role I was active at every level of the
|
||||||
|
application stack:
|
||||||
|
\begin{resplist}
|
||||||
|
\item Designing, optimizing, and monitoring the databases and our storage
|
||||||
|
solutions that back our application platform,
|
||||||
|
\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 product that is the gateway to
|
||||||
|
our primary product.
|
||||||
|
\item Mentoring junior devs and being responsible for overall code
|
||||||
|
quality,
|
||||||
|
\end{resplist}
|
||||||
|
\textsl{Key technologies:} JavaScript, node.js, Angular 1, PostgreSQL (in
|
||||||
|
RDS), AWS (Beanstalk, RDS, Redshift, etc.), Ruby
|
||||||
|
|
||||||
|
\textbf{Software Engineer VI} \hfill \textbf{October 2013 -- October 2015}\\
|
||||||
\textbf{3M (contract via. Maxis Group)}, Austin, TX \\
|
\textbf{3M (contract via. Maxis Group)}, Austin, TX \\
|
||||||
For the last year I have been the lead developer responsible for all
|
I was the lead developer responsible for all front-end development across
|
||||||
front-end development across 3M's new tolling solution as well as the lead
|
3M's new tolling solution as well as the lead responsible for the backend
|
||||||
responsible for the backend implementation several of the microservices
|
implementation several of the microservices that make up the solution. I am
|
||||||
that make up the solution. I am also fulfilling many of the DevOps needs of
|
also fulfilling many of the DevOps needs of the team. In addition to direct
|
||||||
the team. In addition to direct implementation my responsibilities in this
|
implementation my responsibilities in this role included:
|
||||||
role have included:
|
|
||||||
\begin{resplist}
|
\begin{resplist}
|
||||||
\item Technical ownership of all front-end architecture and development
|
\item Technical ownership of all front-end architecture and development
|
||||||
practices.
|
practices.
|
||||||
\item Mentoring and teaching junior developers. Several of our team members
|
\item Mentoring and teaching junior developers (some new to JavaScript).
|
||||||
were new to Backbone and to core JavaScript.
|
|
||||||
\item Technical leadership and oversight of four on-site developers and
|
\item Technical leadership and oversight of four on-site developers and
|
||||||
three off-shore teams of developers.
|
three off-shore teams of developers.
|
||||||
\item Communication with our customers regarding project requirements and
|
\item Direct communication with our customers regarding project
|
||||||
capabilities. I have been responsible on several occasions for explaining
|
requirements and capabilities. This includes on-site interaction
|
||||||
to our customers the architecture of our solution and the benefits they can
|
supporting our sales team.
|
||||||
expect to see when using it.
|
|
||||||
\item Setup and administration of the team's central git repository (using
|
\item Setup and administration of the team's central git repository (using
|
||||||
GOGS).
|
GOGS).
|
||||||
\item Authoring and supporting the release process and version control
|
\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
|
scheme used by the team to deliver builds of the solution to QA and other
|
||||||
internal customers.
|
internal customers.
|
||||||
\end{resplist}
|
\end{resplist}
|
||||||
|
\textsl{Key Technologies:} Java, JAX-RS, Backbone.js, Oracle.
|
||||||
|
|
||||||
Previous to this project I was responsible for maintaining existing
|
Previous to this project I was responsible for maintaining existing
|
||||||
production software. Responsibilities included:
|
production software. Responsibilities included:
|
||||||
\begin{resplist}
|
\begin{resplist}
|
||||||
\item Maintaining our internal, web-based time-tracking tools used by
|
\item Maintaining the internal time-tracking tools used by multiple 3M
|
||||||
multiple 3M departments, spanning roughly 800 people.
|
departments, spanning roughly 800 people.
|
||||||
\item Leading the design and implementation of a fundamental
|
\item Leading the design and implementation of a fundamental
|
||||||
architectural change to the time-tracking tool, extending it to work
|
architectural change to the time-tracking tool, extending it to work
|
||||||
transparently for multiple divisions. It originally had no concept of
|
transparently for multiple divisions. It originally had no concept of
|
||||||
multiple divisions.
|
multiple divisions.
|
||||||
\item Maintaining a very old (20+ years) facility management product still
|
\item Maintaining a very old (20+ years) facility management product still
|
||||||
in regular use by customers. This was a unique challenge as the project
|
in regular use by customers. This was a unique challenge as the project
|
||||||
integrates components written in over 8 different languages, C being the
|
integrates components written in over 8 different languages, C being the
|
||||||
@ -123,16 +168,18 @@
|
|||||||
production machines. This project required close cooperation with an
|
production machines. This project required close cooperation with an
|
||||||
international vendor.
|
international vendor.
|
||||||
\item Writing production scripts to load product and customer-specific
|
\item Writing production scripts to load product and customer-specific
|
||||||
applications and data onto the secured product (ranging from simple memory
|
applications and data onto secured product.
|
||||||
cards to highly secured smart cards).
|
\item Writing and maintaining in-house cryptographic and communcations
|
||||||
\item Writing and maintaining library code used by our scripting platform
|
libraries supporting personaliztion of GlobalPlatform-compliant smart
|
||||||
to perform cryptographic authentication and secure communication with
|
cards.
|
||||||
smart cards following the GlobalPlatform specification.
|
\item Direct technical support of maufacturing centers in the US.
|
||||||
\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
|
\item Developing an IDE (based on SharpDevelop) for the in-house scripting
|
||||||
language used to control and program the product.
|
language used to control and program the product.
|
||||||
\end{resplist}
|
\end{resplist}
|
||||||
|
\textsl{Key Technologies:} C\#, Boo (.NET language), ISO-7816, ISO-14443a,
|
||||||
|
Java, Backbone.js
|
||||||
|
|
||||||
|
\vspace{60mm}
|
||||||
|
|
||||||
\textbf{Systems Developer} \hfill \textbf{August 2010 -- February 2012}\\
|
\textbf{Systems Developer} \hfill \textbf{August 2010 -- February 2012}\\
|
||||||
\textbf{QuantumDigital Inc.}, Austin, TX \\
|
\textbf{QuantumDigital Inc.}, Austin, TX \\
|
||||||
@ -141,13 +188,12 @@
|
|||||||
\begin{resplist}
|
\begin{resplist}
|
||||||
\item Developing a Java library to interface directly with legacy
|
\item Developing a Java library to interface directly with legacy
|
||||||
FoxPro table files.
|
FoxPro table files.
|
||||||
\item Creating several tools to reduce the time spent managing support
|
\item Automation of common support requests fielded by the development team.
|
||||||
requests made of the development team.
|
|
||||||
\item Participating in the planning and design of the next generation
|
\item Participating in the planning and design of the next generation
|
||||||
of the core order placement and fulfillment software (see
|
of the core order placement and fulfillment software (see
|
||||||
\texttt{http://quantumpostcards.com}).
|
\texttt{http://quantumpostcards.com}).
|
||||||
\item Designing and developing the company's first mobile application with
|
\item Developing the company's first mobile application
|
||||||
one other coworker (see \texttt{http://quantumdigital.com/qcards})
|
(see \texttt{http://quantumdigital.com/qcards})
|
||||||
\end{resplist}
|
\end{resplist}
|
||||||
|
|
||||||
\textbf{Software Architect and Developer} \hfill \textbf{June 2005 -- August 2010}\\
|
\textbf{Software Architect and Developer} \hfill \textbf{June 2005 -- August 2010}\\
|
||||||
@ -176,17 +222,8 @@
|
|||||||
|
|
||||||
\textbf{Summer Intern / Contractor} \hfill \textbf{June 2004 -- Oct 2004}\\
|
\textbf{Summer Intern / Contractor} \hfill \textbf{June 2004 -- Oct 2004}\\
|
||||||
\textbf{Freescale Semiconductor (Hardware/Software Development)}, Austin, TX \\
|
\textbf{Freescale Semiconductor (Hardware/Software Development)}, Austin, TX \\
|
||||||
Notable accomplishments included:
|
Notable accomplishments included: developing hardware diagnostics scripts,
|
||||||
\begin{resplist}
|
schematic capture using Mentor Degisn Architect, assisting lab technicians.
|
||||||
\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
|
% Ongoing Personal Development
|
||||||
@ -195,24 +232,26 @@
|
|||||||
the work I have done for employers over the years. Some of my favorite
|
the work I have done for employers over the years. Some of my favorite
|
||||||
projects have been:
|
projects have been:
|
||||||
\begin{resplist}
|
\begin{resplist}
|
||||||
\item Creating a system to manage the logistics of a church's Vacation
|
\item Creating a SaaS-like product to manage the logistics of a large
|
||||||
Bible School. This tool has been used for several years primarily by
|
church's yearly Vacation Bible School. This tool was used over a ten-year
|
||||||
non-technical volunteers and has received praise for its ease-of-use and
|
period primarily by non-technical volunteers and received praise for its
|
||||||
for increasing productivity.
|
ease-of-use and for increasing productivity.
|
||||||
|
|
||||||
The next generation of this tool is being beta-tested for this year's VBS
|
Over it's lifetime the tool evolved from a desktop-based application
|
||||||
program. This version of the tool is web-based. It is built on an Erlang
|
coordinating with a centrally-managed database to it's current SaaS
|
||||||
back-end, an HTML5 and JavaScript front-end based on Backbone.js, and it
|
architecture: a single-page web application written primarily in React.js
|
||||||
exposes a RESTful API which is used internally by the front-end.
|
coupled with a REST API written in Erlang and Groovy, deployed
|
||||||
|
with it's PostgreSQL database in AWS.
|
||||||
|
|
||||||
\item Developing a new documentation tool, \texttt{jlp}, to apply the
|
\item SermonLink.net, a tool I initially wrote for myself to author and
|
||||||
principles of Literate Programming with the abilities of modern-day
|
manage personal teaching materials and later expanded to offer as a
|
||||||
documentation tools (like \texttt{javadoc}). This allows code and
|
service to others. Following initial positive feedback but little
|
||||||
documentation to be effectively co-located in source files.
|
traction I put the continued development on the back-burner, though it is
|
||||||
|
still used on a regular basis.
|
||||||
|
|
||||||
Though this project is still in its early stages, it is used for all of my
|
SermonLink is a responsive web app with a fully decoupled front-end
|
||||||
personal projects. You can browse the code at
|
written in JavaScript using Backbone.js backed by a REST API written in
|
||||||
\texttt{https://doc.jdb-labs.com/jlp/current/}
|
Groovy and Java.
|
||||||
\end{resplist}
|
\end{resplist}
|
||||||
|
|
||||||
%__________________________________________________________________________
|
%__________________________________________________________________________
|
||||||
@ -223,14 +262,14 @@
|
|||||||
100+ hours completed towards a B.S. in Computer Science
|
100+ hours completed towards a B.S. in Computer Science
|
||||||
|
|
||||||
%__________________________________________________________________________
|
%__________________________________________________________________________
|
||||||
% Referees
|
% References
|
||||||
\section{\mysidestyle Referees}
|
\section{\mysidestyle References}
|
||||||
|
|
||||||
\begin{tabular}{@{}p{6cm}p{6cm}}
|
\begin{tabular}{@{}p{6cm}p{6cm}}
|
||||||
\textbf{Ben Benson} & \textbf{Mridul Sharma} \\
|
\textbf{Ben Benson} & \textbf{Cameron Cooper} \\
|
||||||
Senior Architect & Regional Engineering Manager \\
|
Senior Architect & Chief Technical Officer \\
|
||||||
Traffic Safety Systems Division & Personalization and Services \\
|
Traffic Safety Systems Division & Edgecase Inc., Austin, TX \\
|
||||||
3M, Austin TX & Gemalto Inc., Austin, TX \\
|
3M, Austin TX & \\
|
||||||
\end{tabular}
|
\end{tabular}
|
||||||
|
|
||||||
\hspace*{1in} \textit{additional contacts and contact information available on request}
|
\hspace*{1in} \textit{additional contacts and contact information available on request}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user