Austin, TX | | LinkedIn
Experienced, detail-oriented software development engineer focused on open source. Always looking for challenges. Particularly interested in cloud computing.
J2EE 1.4 | Java SE 6.0 | Servlet 2.4 | JSP 2.0 | JMX 1.4 | JNDI 1.2 | Ant 1.8 | JUnit 4 | Spring Security 3.0.5 | Spring 3.1 | JDBC | Maven 3.0 | Ivy 2.0 | Hibernate 3.2 | SWT 3.3 | JAX-WS 2.2 | JAXB 2.2 | Jackrabbit 2.2 | JCR 1.0 & 2.0 | Python 2.5 | Ruby 1.8
SQL Server 2008 | Oracle 10g | PostgreSQL 8 | MySQL 5 | MongoDB 2 | JBoss AS 7 | Tomcat 6.0 | CAS 3.4 | ApacheDS 1.5 (LDAP) | Active Directory | Windows 7 | Ubuntu 12.04 | Mac OS X 10.8
Amazon EC2 | Amazon EBS | Amazon S3 | AWS Elastic Beanstalk | OpenStack Compute, Networking, & Storage 2012.2 (Folsom) | Rackspace Cloud Servers | Red Hat OpenShift Flex | VMWare Cloud Foundry | Heroku | Opscode Chef Server 10
Shell scripting | Eclipse 4 | Git 1.7 | Subversion 1.7 | Oracle VM VirtualBox 4.1 | Jenkins
Software Engineer III
X.commerce, an eBay company (Austin, TX)
- Deployed multi-node, private OpenStack cluster on bare-metal from forked GitHub repositories for OpenStack and Chef cookbooks. Specific focus on Glance, Swift, and Cinder.
- Improved the continuous integration and continuous delivery platform built using Jenkins, Cloud Foundry, and OpenStack by making the Ruby-based pipelines more robust, easier to configure, and more secure.
Senior Software Engineer
Pentaho Corporation (Orlando, FL)
October 2006-April 2012
- Designed and implemented next generation repository for storing secured BI artifacts such as reports and ETL transformations across all products. Repository implemented using Spring and Jackrabbit with custom node types and access control logic. Multi-tenanted repository supported artifact versioning, locking, undeleting, and ownership. Used Spring's aspect-oriented programming (AOP) to implement the cross-cutting concerns of security and transactions.
- Served as primary point of contact for feature addition, support, and defect resolution for the product's security system. Created thorough documentation and numerous HOW-TOs, making the product's security one of the best documented products on the public wiki. Provided extensive assistance to support, training, and sales departments by participating in numerous security-related engagements. SpringOne Americas 2008 speaker.
- Integrated company products with various cloud (IaaS and PaaS) providers. Created process for launching company product suite on Amazon EC2 without the use of a custom image. Process used for testing and training. Also open-sourced on GitHub.
- Completed implementation and new feature additions on the product's license system--code that restricts execution of enterprise software to authorized customers.
- Participated in Spring Security, Apache Jackrabbit, CloudInit, and other open source communities including opening defects and providing patches. Addressed numerous technical questions from users on the company's public forums.
- Developed exclusively with Linux since 2007.
Application Software Developer
Wyndham Vacation Ownership (Orlando, FL)
October 2003-September 2006
- Designed and implemented extensible web application security infrastructure according to best practices. Used Acegi Security to provide transparent authentication and authorization. Encapsulated user management (e.g. registration, password retrieval, administration) into a separate web application whose services were shared by client web applications. Designed security infrastructure to support users from heterogeneous datastores such as Microsoft Active Directory and relational databases like Oracle with graceful degradation for unsupported operations. Provided verbose auditing. Account lockout was implemented using the Observer pattern. Created custom single sign-on (SSO) implementation that seamlessly integrated with Acegi Security's authentication mechanism.
- Served as the primary implementer of initial data layer, business facade, and reusable UI elements for company's primary external web site using established enterprise design patterns. Used Hibernate for object-relational mapping and Spring DAO support for data access objects. Wired dependent objects together using Spring's bean factory functionality while also providing per-environment "override" configurations. Designed common, reusable page elements using Tiles. Followed Spring conventions of judicious use of Java interfaces and runtime exceptions. Introduced transformation layer to allow Hibernate POJOs to differ from the business objects, allowing design of data layer and business facade to proceed independently and in a manner convenient for each.
- Assisted operations personnel with the configuration of development, integration, and staging environments in addition to a production environment. Configured clusters and servers in WebSphere including virtual hosts, datasources, and shared libraries.
- Served as a build engineer for application builds using Ant, administrator for version control and continuous integration systems (ClearCase and CruiseControl respectively), and system administrator of shared development machines.
MS in Computer Science, 2003
University of Central Florida
As a Graduate Teaching Assistant, instructed or assisted in the instruction of object-oriented programming, enterprise technologies, and discrete mathematics courses.
BS in Computer Science, 2001
University of Central Florida
GPA: 3.9, Magna Cum Laude
Last modified January 2013.