Summary
Experienced software engineer with a strong foundation in quality assurance and 10 years of experience with the software development lifecycle. Experienced with the Agile Development process and utilizes it to ensure consistent delivery to customers and business partners. Experience with multiple system architectures and languages. Currently interested in the latest technologies/patterns related to mobile, web and the cloud.Skills / Technical Expertise
Languages
- C# and .Net (7yr) – Nunit (4yr); Windows UI Automation (1yr); Windows.Forms (1yr); COM (1yr)
- C++ (2yr) – COM (1yr); Windows API (1yr)
- C (3yr) – gcc (3yr)
- Java (5yr) – JDBC (1yr); JSP (1yr); Servlets (1yr); EJB; Swing
- Flex (4yr) – Actionscript (2yr); Parsley
- Perl (2yr) – Catalyst; Gearman; DBIx
- Ruby (1yr)
- Web Technologies – PHP (4yr); HTML (7yr); Javascript (4yr); CSS (1yr); XML (3yr); XLST (2yr); Template Toolkit (2yr); JQuery (2yr)
- Other Scripting Languages – Silk (5yr); VBScript (1yr); Korn/Bash Shell (5yr)
- APIs – Silk4J (1yr); Flickr (1yr); QuickBase (1yr); phpBB (1yr)
- Design – UML (3yr); Design Patterns (1yr); Dependency Injection/Inversion of Control (1yr)
- x86 Assembly (1yr)
Software
- IDEs – Microsoft Visual Studio 2005 and 2008 (3yr); Eclipse (4yr); Flex Builder 2 and 3 (3yr); SilkTest (5yr); NetBeans 7
- Web Servers – Apache (4yr); Tomcat (1yr); Nginx (1yr); Glassfish
- Databases – MySQL (4yr); MS SQL 2005 (1yr); Oracle 9i (1yr)
- Source Control – Perforce (5yr); Subversion (4yr); CVS (1yr)
- Tools – Serena TeamTrack (5yr); GForge (2yr); VMWare Workstation (6yr); Sun VirtualBox (1yr); SmartBear Code Collaborator (3yr); Mercury Quality Center (2yr)
Experience
Senior Software Engineer II
Tucson, Arizona
June 2010 - Present
- Hired permanently from previous contract role to continue role with RMS Engineering Productivity Enhancement Team (EPET) as a software engineer and quality assurance leader.
- EPET is consistently responsible for delivering key products that impact RMS goals, such as "March to Superior" and "Taking Engineering to the Next Level".
- The products and projects that EPET has delivered have saved the company hundreds of engineering hours and millions of dollars.
- Responsible for managing the software quality assurance aspects of the team including processes, schedule and testing personnel, as the team's quality assurance leader.
- Review and collaborate, with the team architect, software architecture designs for new projects.
- Key contributor to the code and architecture of a collaborative platform that accelerates the team's ability to deliver products to customers that exceed their expectations in terms of functionality and schedule.
- Ensure operational tasks are completed for maintenance of existing products and services.
- Responsible for mentoring junior team members.
Raytheon Missile Systems, via contract through ICONMA
Perl/Web/Database/VBA Developer
Tucson, Arizona
October 2009 - June 2010
- Was an essential member of the RMS Engineering Productivity Enhancement Team (EPET) that strategically sought out RMS Engineering needs where there is an opportunity for a high return in productivity gains and solved in that space to create huge wins for the organization.
- Responsible for maintenance and availability of the EPET production server cluster (RHEL / GearMan / FreeTDS / MS Sql / Memcached ) that host multiple live customer solutions.
- Essential to the success of the development and deployment of the RMS Section Head Directory that is used by more than 20% of the RMS Engineering staff to find data on RMS Section Heads.
- Integral to the successful development of the Human Resources Compensation Model tool. This tool allows Human Resources to be better informed about the decisions made when determining employee compensation.
- Key member in producing a solution for managing Engineering Lab equipment that allowed the company to understand and prevent the re-ordering of existing equipment and has the potential to save the company up to a million a year in the purchase of redundant equipment and calibration of unused test stock.
- Responsible for training existing and new quality assurance testers on the team which was critical for each product delivered by the team.
- Key team member for the active development of the EPET’s core product line using Catalyst, Gearman, Memcached, MS SQL, and Perl.
- Integrally involved in the software methodology process development with the team architect, directing planning and implementation of quality assurance aspects of all RMS EPET products.
- Utilized experience within the software development lifecycle to mentor other junior team members.
- Primary support contact for multiple customer solutions.
Treasurer/Website Administrator
Tucson, Arizona
June 2008 - Present
- Participate in Board/Officers meetings and facilitate monthly meetings for members.
- Facilitate club related events.
- Keep accurate financial records as club Treasurer, using QuickBooks.
- Actively update club's event calendar with upcoming events.
- Administrate all website functions, including updating pages and maintenance of the club forums.
- In December 2011, the club's website was redesigned using the Drupal 7 framework to allow for other club officers to update content on the site. The update also gave the website more social media capabilities and tracking. The result so far has doubled traffic to the website.
- Used Flickr's API to automatically update the club's website whenever new content is created on Flickr.
Software Engineer in Quality
Tucson, Arizona
August 2009 - November 2009
- Worked on future releases of QuickBooks and future patch releases for current market available versions.
- Using Perl, implemented a solution to retrieve log files from a Quickbase database that had been uploaded by users and then examine the logs for errors that occurred. This is used to verify that users are not experiencing any issues when new updates are made available for them to download.
- Designed and started the implementation for a tool in C# to automate the process of verifying CD and Download images for QuickBooks. This tool, when completed, will result in a reduction in the time and number of QA needed to verify CD and Download images from days down to minutes.
Quality Assurance Analyst
Tucson, Arizona
February 2008 - August 2009
- Ensured the successful and quality release of products and patches for QuickBooks 2009 through 2010.
- Performed code reviews for all code check-ins to ensure quality code before it is added to the code base.
- Engineered a tool in C#/NUnit to perform checks at the API level for the Delivery System component of QuickBooks.
- Took full ownership as administrator to local team file server. Made additional improvements to allow users to reset passwords and improved the efficiency of the previous build delivery system shell scripts.
- Designed automation plan and test suites for the Delivery System component of QuickBooks. Automated 87% of manual tests which reduced test execution from 1 week to 1 day.
- Designed and implemented automation framework to support WPF components in QuickBooks using C# and the .Net automation framework. Used this framework to then design and engineer automation tests using NUnit to test the new Report Center component.
Quality Assurance Tester
Tucson, Arizona
February 2005 - February 2008
- Ensured the successful and quality release of products and patches for QuickBooks 2004 through 2008 versions.
- Utilized communication skills to work with multiple feature teams across multiple remote locations.
- Developed Linux shell scripts to improve the build delivery system for the local team file server.
- Helped to design and develop a C# application to reduce the time QA members had to wait for build installations.
- Designed and developed test cases and code coverage test suites using NUnit on one of the first .Net components used within QuickBooks.
- Directly led the testing effort for the Help system, which involved managing other QA Testers and then monitoring and collecting their testing status.
Quality Assurance and Support Engineer
Tucson, Arizona
February 2001 - February 2005
- Worked on various versions of Quicken and QuickBooks for Windows and Macintosh to ensure quality releases and documentation.
- Utilized experience and knowledge in software development to design unique tests and find issues that would not normally be found via standard testing.
- Documented complex customer issues for defect reports and knowledge base entries.
- Worked remotely under minimal supervision while reporting to a team located in Mountain View, CA for all administrative and project needs.
- Worked under minimal supervision while managing tasks and deadlines.
- Handled internal customer questions/issues as a subject matter expert.
Education
January 2005 - December 2008
Tucson, Arizona
GPA: 3.104
Associate of Science
Major: Computer Science
Certificate: Computer Programmer Specialist - Programming in C
September 1998 - October 2004
Tucson, Arizona
Additional Training
Awards
- Eagle Scout Award
michael@pattersonjr.com
520-829-7929