Summary
Experienced, detail-oriented software development engineer focused on open source. Always looking for challenges. Particularly interested in cloud computing.
Proficiencies
Languages/Libraries
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 2.0.5, Spring 2.0, JDBC, Maven 2.0, Ivy 2.0, Hibernate 3.2, SWT 3.3, JAX-WS 2.2, JAXB 2.2, Jackrabbit 1.6, JCR 1.0 & 2.0, Python 2.5.
Web
XHTML 1.0, XML 1.0, HTML 4.0, XSL 1.0, JavaScript 1.5, CSS 2, XUL, GWT 2.0.
Servers
SQL Server 2008, Oracle 10g, PostgreSQL 8, MySQL 5, JBoss AS 7, Tomcat 6.0, CAS 3.4, ApacheDS 1.5 (LDAP), Active Directory, Windows 7, Ubuntu 11.04.
Cloud
Amazon EC2, Amazon EBS, Amazon S3, AWS Elastic Beanstalk, OpenStack Compute, Rackspace Cloud Servers, Red Hat OpenShift Flex, VMWare Cloud Foundry.
Tools
Shell scripting, Eclipse 3.7, Subversion 1.6, YourKit 9, ProGuard 4.3, Scrum, Oracle VM VirtualBox 4.1, TDD, Jenkins.
Experience
Senior Software Engineer
Pentaho Corporation (Orlando, FL)
October 2006-Present
Pentaho Corporation (Orlando, FL)
October 2006-Present
- 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.
Accolades
- "I want to thank you for the extra effort you made to get this ready in time for...class. Everything is working well and the performance...appears to be just fine. The ease of setup and mass deployment is amazing and at .08 / hr we can afford to offer this class at a compelling price." Pentaho Executive
- "Dude you are a rock star. Our customer at [company omitted] just named you by name as a hero on our live web seminar. Nice work." Pentaho Executive
- "You were today's webcast hero dude - [person omitted] called you out by name - NOW that's Support! You rock! " Pentaho Executive
- "I want to talk a little bit about Pentaho security and working with their wonderful, wonderful team of technical support. They really rose to the occasion. We had a specific requirement where we wanted to authenticate our users against Active Directory. That was what we were using at the time, LDAP. And we wanted to manage the authorization with our users, in other words, mapping our users to role. ... Unfortunately, in 1.2 [version of Pentaho], using the Acegi [Security] framework, which is the security framework that the Pentaho platform uses, out of the box, didn't necessarily facilitate that. It was one or the other. Either it comes from Active Directory or everything comes from a relational database. Being able to split that apart really required some specialized classes and that was something that we didn't really want to look at. And the Pentaho folks said, "You know what [company omitted]? We really see this as a typical use-case. It certainly is a reasonable request. You know what, we'll go ahead and take care of that for you. We'll write up the class and we'll implement it." And all of the people that worked on the, Mat Lowery, and all of his cohorts working on the security pieces really did a fantastic job . And I believe that [the custom code] is now readily available in the newer releases. And some of the documentation is online. So that was a big piece." Pentaho Customer
- 3rd Quarter 2007 Golden Hoe Award (peer nominated) Runner-Up.
- "I just wanted to take a minute to say thank you to Mat Lowery for providing me with the information that I need to support a Pre-sales engagement POT. Mat has proven many times over to be extremely knowledgeable, sincere, diligent and precise in his explanations and examples. I just wanted to extend my sincere appreciation to him and your team. Mat is a great example of the type of an employee that makes Pentaho an awesome company." Pentaho Sales Engineer
- "WOW !!!! This is very cool. You guys ROCK !!!. Thanks for all your help with this and please extend our appreciation to Mat Lowery for the additional docs including the well documented SSO ant script." Pentaho Customer
- "Props to you, Mat! Thanks for all of the hard work you've put in assisting SST - this goes along way towards our company's success and our customer's satisfaction." Pentaho Support Engineer
- "Guys, I know that you are a small, tight knit group, however I did want to directly recognize the effort and support Mat Lowery provided to me at [company omitted]. He "stayed" with me through some pretty long hours, past midnight on two occasions, took a 5 hour plus phone call with me, etc. He even coded a new class that added additional logging so we could find out why LDAP wasn't working (this was *AT* midnight). Not to mention he put up with my frustration/sarcasm or sarcasm/frustration (pick your order) with nary a complaint. You are lucky to have him in your organization , please make sure his efforts do not go "unnoticed". PS [Others] were helpful too, but the sheer magnitude of Mat's help needs highlighting." Pentaho Partner
- "Mat Lowery, a Pentaho engineer who focuses on security during his day job, put together the content for the module [at the Pentaho Partner Summit] today. Mat took a pretty complex set of topics (LDAP, Acegi, CAS and J2EE Container Security) and delivered just enough content to understand easily what Pentaho Security is made up of, and what Pentaho adds to the standard technologies available to you in a J2EE environment." Pentaho Software Engineer
Application Software Developer
Wyndham Vacation Ownership (Orlando, FL)
October 2003-September 2006
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.
Education
-
MS in Computer Science, 2003
University of Central FloridaOverall GPA: 3.9
- 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 FloridaOverall GPA: 3.9. Magna Cum Laude
Last modified January 2012.