James E. Ervin is an experienced Software Engineer with over 12 years experience in the design, implementation and deployment of server side software components, Rich Client applications and participation in the Open Source community.
Skills/Relevant Technologies
Programming Languages: Ant, Java, C/C++, Groovy, Ruby, Python, Beanshell, SQL, BASH, CSH, and XML.
Agile Software Engineering Methodologies/Technologies: XP, Scrum, Functional Testing, Integration Testing and Unit Testing.
Graphical User Interface ( GUI ) API(s): Swing/AWT, JFace/SWT
Integrated Development Environments: Eclipse, NetBeans and JEdit
Open Services Gateway Initiative ( OSGi )
Maven and Maven Eclipse
Java Database Connectivity ( JDBC )
Java Remote Method Invocation (RMI), XML-RPC and SOAP protocols.
Eclipse plug-in development with the Standard Widget Toolkit (SWT) and JFace.
Eclipse Web Tools Platform (WTP)
Eclipse Monkey Scripting using Beanshell, Groovy and Ruby
Apache Jakarta Beanscripting Framework (BSF)/javax.script
Concurrent Versioning System (CVS), Source Code Control System (SCCS) and Subversion.
Unit Testing Libraries: JUnit, PDE JUnit, Db-Unit, XML Unit, Easy-Mock, and JMock.
DBMS: Oracle 8i, MySql, Postgre SQL, and Hypersonic SQL
Application development on the following versions of UNIX: AIX, SunOS, IRIX and Linux.
OpenGL and Performer graphics API(s)
Real Time modeling and application development
M68000, M6811, Intel 80x86 and Power PC 601 assembly languages and hardware architectures.
VHDL, Programmable Logic Array (PLA) Design and Logic Design
Hardware/Software Interface design and development
Good communication skills
Experience
September 2008 – Present
Independent Software Engineer under contract to AMD Inc: Austin, Texas
Worked on Eclipse RCP application for AMD called NGEDA.
Assisted in integrating Eclipse PDE build with an automated build process.
Enhanced and developed NGEDA's data import capability.
Designed data models using Eclipse Modeling Framework (EMF).
Designed and implemented JFace/SWT UI widgets for NGEDA.
Participated in an Agile Scrum Development Process including Unit Testing, sprint planning, etc...
March 2007 – May 2008
Independent Software Engineer under contract to eBay Inc: Campbell, California / San Antonio, Texas
Software Engineer (specializing in Eclipse RCP/Plugin work)
Author of SOA (Service Oriented Architecture) Tooling Eclipse Plugin for eBay Inc.
Integrated the Eclipse plugin support with the existing command line SOA Tooling support.
Developed enhancements to the internal eBay Eclipse Plugin support for eBay's Build and Release System.
Integrated eBay's SOA Tooling Eclipse support into eBay's Build and Release System and Maven/Maven Eclipse.
Integrated eBay's SOA Tooling Eclipse support with Eclipse Web Tools Platform (WTP).
Added UI support to simplify discovery of existing services and to support both Web Application and eBay SOA specific policy configuration by the user.
Supported integration of the SOA plugin into a continuous automated build system running PDE based JUnit tests against the plugin in headless mode.
May 2006 - Present
Groovy Monkey Eclipse Plugin: http://groovy.codehaus.org/Groovy+Monkey based on Eclipse Dash's: Eclipse Monkey
Created the open source Eclipse plugin project Groovy Monkey
Rewrote the Eclipse Monkey engine to be based on Apache BSF to allow scripts to be written in Beanshell, Groovy or Ruby.
Added threading support through the Eclipse Jobs API to eliminate display thread locking.
Added editor support for code completion and markers with quick fixes and an outine view.
May 2004 – Present
Groovy Eclipse Committer/Project Lead: http://groovy.codehaus.org/Groovy+Eclipse
Committer since 2004.
Project Lead since 2008.
October 2002 – March 2007
Northrop Grumman – TASC: San Antonio, Texas
Software Engineer
System Analyst and Software Developer for both the Palantir and Storm 4.0 software platforms.
Wrote Eclipse RCP (Rich Client Platform) UI (User Interface) components.
Wrote OSGi (Open Services Gateway Initiative) middle-ware server components using the Service Oriented Architecture ( SOA ) paradigm.
Developed Web Services based components using SOAP and XML-RPC.
Developed the automated build, test and deployment tools to support using the Agile Development software development methodology.
Used application profiling tools to monitor, test and improve the performance of the Storm software platform.
Wrote software using the Test Driven Development (TDD) paradigm to improve robustness and functionality of both the Palantir and Storm software platforms.
June 2000 – October 2002
Veridian Information Solutions: San Antonio, Texas
Software Engineer
System Analyst and Software Engineer on the Common Intrusion Detection Director portion of the Automated Security Incident Measurement Intrusion Detection System for the U.S. Air Force.
Primary author and designer of the middle-ware server application (GUI Server) that provided real time incident recording and threat analysis for the Air Force Computer Emergency Response Team.
Refactored, redesigned, repaired errors with and made design improvements that improved data quality and the performance of the middle-ware server.
Produced software releases, handling issues like version control and configuration management.
Wrote Unit and Integration Tests in order to improve the reliability and performance of both the middle-ware server application and remote client.
December 1999 - June 2000
Command Technologies Incorporated: San Antonio, Texas
Software Engineer II
Primary Software Developer and author on the Image Generator, Threat System Simulator, and Aircraft Host Simulator application components of the Visual Threat Recognition and Avoidance Trainer (VTRAT) software system developed for the Air Force Special Operations Command (AFSOC).
Modeled realistic and real-time simulated threats from systems developed in the former Soviet Union and in use throughout the world.
Advised and conferred with AFSOC trainers to produce the most effective training system to date for their personnel to be able to recognize and avoid ground based threats. These threats included anti-aircraft guns of varying caliber, shoulder fired infrared missiles and radar guided surface to air missiles.
Made use of mathematical modeling and Object Oriented Design techniques to provide the best application with sustainability over the whole software life-cycle.
Trained coworkers and authored documentation to enable others to take over the project that enabled seamless customer support.
Analyzed new software packages, software development paradigms and simulation protocols including DIS and the High Level Architecture (HLA/CORBA).
Evaluated new hardware and display technologies for future phases of VTRAT and future software projects.
January 1998 - December 1999
DSC Communications / Alcatel USA: Austin, Texas
Software Engineer I
Software Developer and Analyst for both the Home Location Register (HLR) mobile telephone subscriber database and Short Message Service Center (SMSC) mobile user messaging service.
Wrote C++ code to extend and enhance the internal software framework used to program both the HLR and SMSC mobile telephony systems.
January 1995 - December 1995
IBM: Austin, Texas
Cooperative Engineer
Maintained and developed on an expert system database testing suite for debugging and development of I/O Channel controller chips on both the PCI and Power PC 601 series system buses.
Performed test simulations, analyzed results and developed solutions to logic design errors.
Education
Bachelor of Science in Electrical and Computer Engineering The University of Texas at Austin
Awarded in December 1997
Additional Information
TS (SCI) clearance.
Committer to the open source Groovy Eclipse plug-in project: http://groovy.codehaus.org/
Committer to the open source project Eclipse Dash: http://www.eclipse.org/dash
Author of the open source Eclipse project Groovy Monkey: http://groovy-monkey.sourceforge.net.