THOMAS LAUREN
tomlauren@gmail.com / www.tomlauren.com
3800 Pike Road, # 13-201
Longmont, Colorado 80503
Home: 303-772-7811
Cell: 720-244-7619

 
SUMMARY OF QUALIFICATIONS
 
Accomplished software developer with over twelve years of experience in the telecommunications, satellite imagery, scientific research, and microelectronics industries.  Consistently aware of the latest software technologies.  Proven ability to create quality software while adapting to changing customer needs.  Recognized team player committed to working effectively with individuals at all levels.  Sun Certified Programmer for the Java 2 Platform.
 
•   Java expert with experience in the development of responsive, scalable, and robust applications.
•   Adept at architecting, designing and developing entire application systems, from web/rich client user interfaces to business logic components and the database tier.
•   Knowledgeable of lightweight open source technologies including the Spring Framework.
•   Experienced in object-oriented software design including the use of design patterns and UML.
•   Proficient in unit testing, acceptance testing, and performance/scalability testing and tuning.
•   Skilled in agile software development methodologies.
•   Effective at requirements gathering, analyzing risks and choosing appropriate technologies.
 
PROFESSIONAL EXPERIENCE
 
Intrado, Longmont, CO 2006 - Present
Senior Software Engineer
Responsible for developing the voice communication system for the Intelligent Emergency Network, the next generation 9-1-1 emergency call routing and distribution system.  Developed using clustered SIP application servers and a relational database, this 300,000+ line highly available system reliably routes and delivers 9-1-1 emergency telephone calls via VoIP technologies.  System also enables future IP-based communication technologies.
 
•   Produced a maintainable and extensible architecture through the abstraction of protocols and underlying technologies/APIs.  Design supported the use of multiple specifications for connecting participants to a single call conference, each party potentially relying on a different network element make/model/release.
•   Developed a redundant, highly available call routing system through the use of clustering and load balancing.  Addressed failure scenarios.  System allowed for hot upgrades.
•   Provided an agile, reliable, efficient software development environment by driving the overall source code repository structure, build framework, continuous build system, and automated code review tools for the entire project.  Environment allowed a team of twelve developers across multiple sites to seamlessly contribute and integrate software components.  Regularly delivered high-quality software artifacts to a dedicated SQA team.
•   Allowed individuals to obtain a cluster-wide visual representation of the messaging and software interactions involved in a call by developing a network traffic tracing tool.  The tool proved to be invaluable for analyzing and debugging 9-1-1 calls.

DigitalGlobe, Longmont, CO 2004 - 2006
Senior Software Engineer
Responsible for developing the Collection Planning System (CPS) for QuickBird II and WorldView I, the world's highest resolution commercial imaging satellites.  Developed using OAS, Swing, JMS, Oracle, and Spring, this 300,000+ line J2EE application enables the planning of all satellite imagery collections.
 
•   Met the challenging planning needs of the WorldView spacecraft by implementing required functionality, reducing defects, refactoring, and increasing test coverage of sophisticated system components including a manual scheduler, ephemeris/contact plan ingester, tasking feasibility assessor, and collection opportunity generator.
•   Provided a comprehensive view of the state and health of the entire CPS system through the development of a web enabled monitoring application and diagnostic engine.  Developed using dependency injection and Spring MVC, the application was delivered three months ahead of schedule.
•   Reduced coupling to remoting technologies and simplified system architecture by introducing advanced Spring features such as lightweight remoting to the project.
•   Deepened awareness of dependency injection and general programming best practices by giving presentations to the team.  Discussions helped eliminate plumbing code, promote pluggability, and structure whole applications in a consistent, productive manner.
•   Increased planning efficiency with the development of an interactive graphical satellite tracking tool used to display ground tracks, cloud cover forecast data, image strips, and order polygons.  Developed using the Eclipse Rich Client Platform, GeoTools, SWT, and JFace, the application is instrumental in visualizing satellite capabilities and maximizing imagery collections.

Center for Limb Atmospheric Sounding, University of Colorado at Boulder 2002 - 2004
Software Engineer
J2EE architect responsible for designing and developing the Science Investigator-led Processing System (SIPS) for NASA's High Resolution Dynamics Limb Sounder (HIRDLS) instrument launched in 2004.  This 160,000+ line J2EE application is a reusable data processing framework designed to ingest, process, archive, and distribute all data for the lifetime of the HIRDLS instrument.
 
•   Evaluated and incorporated appropriate J2EE technologies into the project to help guarantee a robust, transactional, and scalable architecture.
•   Introduced the open source model of software development.  Cut development time and project costs by integrating open source tools, technologies and platforms such as Linux, Tomcat, MySQL, Struts, Spring, JBoss, Log4j, Ant, and JUnit.
•   Developed and implemented the database model for the application, including identifying the entities, attributes and relationships, normalizing the model, and developing the physical database design.
•   Provided a high level of confidence in the code through automated unit tests.  Treated testing as an integral part of the development process.
•   Increased scalability by over 80% through deliberate performance testing and tuning.
•   Achieved customer satisfaction through early and continuous delivery of useful software components.  Used agile software development methodologies to create flexible software that adapted to change.

Sun Microsystems, Broomfield, CO 2000 - 2001
Software Systems Engineer
J2EE developer responsible for producing internal business applications for the Strategic Account Services division.
 
•   Implemented the customer service support software for Sun's top clients with the development of a web enabled account management tool suite.  This 120 screen, 60 table project utilized J2EE technology running on iPlanet web/application servers.
•   Improved application performance by 70% through the use of the latest J2EE technologies.
•   Increased awareness of the latest technologies by giving technical presentations to the team.
•   Spearheaded the use of agile software development practices to improve team productivity.

National Center for Atmospheric Research, Boulder, CO 1999 - 2000
Scientific Application Developer
C++ programmer responsible for developing atmospheric data processing software for NASA's Measurements of Pollution in the Troposphere instrument launched in 1999.
 
•   Created C++ class libraries to ingest and calibrate raw data transmitted from the remote sensing spacecraft. Code was an effective, object-oriented means to process atmospheric pollution data.
•   Developed a C program to correct software anomalies introduced by the instrument. All data is still being corrected by this program.

Advanced Micro Devices, Austin, TX 1993 - 1994
Product Development Engineer
Enabled the testing of an advanced, low-power series of microprocessors by designing sophisticated C programs to qualify newly fabricated devices.
 
Hughes Aircraft Company, Los Angeles, CA 1990 - 1992
Microelectronics Design Engineer
Facilitated the design of signal processors for the Apache attack helicopter by developing Hardware Description Language code to behaviorally model circuits.
 
TECHNICAL EXPERTISE
 
Software development      Agile software development, test driven development, Extreme Programming, refactoring, unit testing  
Software design      Object-oriented programming, object-oriented analysis and design, design patterns, UML  
Design tools      Enterprise Architect  
Web tier technologies      Spring MVC, Struts, JSP, JSTL, servlets, HTML, JavaScript, CSS, applets  
Data access technologies      SQL, JDBC, Spring DAO, iBATIS, O/R mapping, entity beans, Perl DBI  
VoIP technologies      SIP, SDP, RTP, SIP Servlet API  
SIP servers      WebLogic, SailFin, Mobicents  
Testing      JUnit, Cobertura, Clover, EasyMock, jMock, Web Application Stress Tool 
XML      XML, XSLT, XHTML, Xerces parsers, JAXP, JDOM 
Code/project management      Subversion, CVS, StarTeam, Telelogic Synergy, XPlanner, Scarab, Scrumworks, Enact, BugTraq 
IDEs/build tools      Eclipse SDK, Xcode, Interface Builder, Maven, Ant, make 
Continuous build tools      Continuum, CruiseControl  
Application/web servers      WebLogic, JBoss, GlassFish, Tomcat, Apache, Jetty 
Messaging      JMS, SonicMQ 
Distributed programming      Clustering, load balancing, Spring remoting, RMI, RMI-IIOP, sockets  
EJBs      Session/message-driven/entity beans, XDoclet, EJB alternatives  
Application Frameworks      Spring Framework  
GUI technologies      Swing, AWT, Eclipse Rich Client Platform, SWT, JFace  
Database Servers      Oracle, MySQL, Sybase 
Shell Scripting      Unix (bash, tcsh), DOS  
Operating Systems      Linux, Mac OS X, iPhone OS, Windows  
Languages      Java (Certified), Perl, C, Objective-C, C++, Groovy
 
EDUCATION AND CERTIFICATION
 
B.S., Computer Science, 2001, University of Colorado, Boulder, CO
B.S., Electrical Engineering, 1993, University of Illinois, Urbana-Champaign, IL
Sun Certified Programmer for the Java 2 Platform
 
PATENTS AND PRESENTATIONS
 
•   "Account Management for Delivery of Service", J. Mann, B. Abraham, T. Lauren, C. Swift, patent pending
•   "Logic Expression for Delivery of Service Account Management", J. Mann, B. Abraham, T. Lauren, patent pending
•   "The HIRDLS Science Investigator-led Processing System (SIPS): Supporting operational processing and more," The International Society for Optical Engineering in San Diego, CA, August 2003
 
PROFESSIONAL ORGANIZATIONS AND EVENTS
 
Rocky Mountain Software Symposium, 2002, 2003, and 2004
Boulder Java Users Group
Agile Denver Group