Lawrence Patrick Mulcahy

2580 W 105th Place

Westminster, CO 80234

Tel: 303-548-5258 (Cell)

Email:

Summary:

Senior Java developer with strong server-side experience.

Broad experience in application domains and software development tools and methodologies.

Pivotal Certified Spring Professional

Selected Accomplishments:

  • Lead developer (team of 5) for Alarm Analysis AJAX application with Spring, Hibernate, Java Server Faces, IceFaces, Facelets.
  • Implement user migration tool (SQL Server to Janrain) using Spring Roo, JPA.
  • Promote unit testing and test-driven development by example and with training sessions.

Programming languages, software tools, operating systems and hardware (buzzword section):

Languages: Actionscript, C, Groovy, Java, JavaScript, LISP, Perl, Python/Jython, SQL, tcl

Tools: Ant, Apache CXF, Apache httpd server, ATG Dynamo, awk, CGI, Chef, Cobertura, CVS, Eclipse, EJB, Emacs, Expect, Facelets, Flash, GigaSpaces, Git, GORM, Grails, Hibernate, HTML, iBatis. ICEfaces, ILOG JRules BRMS, JAAS, Janrain (Capture, Engage, Federate), Jasper Reports, JavaMail, JBoss, JDBC, JDOM, JEE, JIRA, JNDI, JPA, JSF, JSP, JUnit, Kickstart, Log4J, Maven, mod_authnz_external, mod_perl, mod_securid, mod_ssl, MongoDB, Nagios, Netcool, OAuth2, Pentaho, Quartz, RabbitMQ, rpmbuild, Shiro, SNMP, SOAP, Spock, Spring, Spring Boot, Spring Data JPA, Spring Data Mongo, Spring Data REST, Spring MVC, Spring Roo, Struts, Sudo, Subversion, Tapestry, Tcl/Tk, Tomcat, Vagrant, Jakarta Velocity, Weblogic Server, Web services, WLST, Xen, XML, XPath, XSLT

Operating Systems: Linux (Centos, Mint, Ubuntu), MacOS, Solaris, Windows

Databases: DB2, MongoDB, MySQL, Oracle, PostgreSQL, SQL Server

Methodologies: Scrum, Waterfall, XP/Agile development

Experience:

Verecloud/Westcon Cloud SolutionsNovember 2013-Present

Broomfield, CO/Louisville, CO

Java Developer and Software Engineer

  • Develop SOAP web service clients and endpoints in Spring and Groovy/Grails with Apache CXF.
  • Write unit/integration/functional tests for Groovy/Grails in Spock. Write and maintain Jenkins CI projects in Groovy.
  • Write reports data application in Grails to periodically update data warehouse from the application MySQL and MongoDB databases.
  • Write MySQL/MongoDB database migration scripts in Groovy.
  • Write Reseller Onboarding Grails script.
  • Set up Jasper Reports server; develop reports using JasperSoft Studio integrating data from GigaSpaces, MongoDB, MySQL using Pentaho data integration tool. Develop Grails application to perform data migration to tenanted data warehouses (MySQL, MongoDB) for reporting.
  • Automate creation of VMs and deployment of application with Chef/Vagrant. Create Chef recipe to build VirtualBox demo VM for the application
  • Deploy and administer Nagios monitoring, write custom Nagios probes.
  • Deploy and administer LDAP with PhpLdapAdmin for authentication and authorization for shell and web access. Write documentation, train ops staff to administer LDAP.
  • Maintain complex Apache httpd server configurations using SSL, rewrite rules, name-based virtual hosts, LDAP authentication. Write Groovy script for automated generation of Apache httpd server config files.
  • General system and network administration on CentOS cloud servers on Amazon Web Services, Softlayer.
  • Attend 2014 “No Fluff, Just Stuff” Java seminar.

Digital First MediaMay 2012 – October 2013

Denver, CO

Senior Java Engineer

  • Do maintenance programming on suite of internally developed content management applications (Proteus, NGPS, Atoll) using ATG Dynamo, myBatis, JBoss, Spring, Hibernate, DB2.
  • Code XML and JSON web services, process XML input with XPath
  • Convert NGPS live site authentication/authorization to Janrain. Integrate Janrain and Disqus (JavaScript, AJAX).
  • Write documentation for our internal wiki (MediaWiki).
  • Implement user migration tool with Spring Roo, JPA.
  • Scrum software development methodology. JIRA project and issue tracking software.
  • Attend June 2012 “Uberconf” Java seminar.

Presilient June 2011 – April 2012

Broomfield, CO

Senior Software Developer

  • Develop Nagios config file generator with Spring Roo, Maven, JPA, MySQL.
  • Develop email extraction and aggregation application with Spring, Maven, JavaMail.
  • Re-work broken Maven build for legacy application for repeatable, automated builds.
  • Set up and administer internal Nagios server with active and passive SNMP, NRPE, NSCA, PNP4Nagios.
  • Write Apache httpd server authentication plugin in Perl for use with mod_authnz_external module.
  • Improve performance of Apache httpd server by adjusting expire times, compression based on file types.
  • Support Spring/Hibernate/Struts/JBoss legacy application.
  • Package RPM software components with rpmbuild.
  • Write Kickstart configurations. Write scripts for automated creation and deployment of application in CentOS VMs into Xen virtual environment.
  • Attend 2011 "No Fluff, Just Stuff" Java seminar.

Qwest Communications June 2000 – June 2011

Denver, CO

Lead Software Development Engineer

  • Give my team 2 1-hour presentations on automated unit testing with Junit 4.
  • Implement tool for automated creation of Weblogic domains using Ant and WLST (Python/Jython).
  • Implement Alarm Analysis AJAX web application using Spring, JSF, ICEfaces, Facelets, Hibernate.
  • Research and implement RSA Cleartrust authentication for Weblogic and ILOG JRules applications.
  • Research, develop proof-of-concept examples, document and write code leading up to the migration of a mixture of Java web applications, stand-alone Java applications, and scripts into a J2EE application server (Weblogic Server 9.2). Rewriting the stand-alone Java applications and scripts as EJBs activated by the J2EE 1.4 timer services greatly streamlined the configuration and deployment of all applications which it was then possible to fully automate; eliminating the previous poorly understood and poorly documented manual processes.
  • Research and implement clustered failover operation with singleton service of timer-driven EJBs.
  • Write unit tests with Junit and measure test coverage with Cobertura.
  • Code changes for migration of BEA Weblogic Server J2EE application from one web service this application is a client of to a compatible web service.
  • Develop, maintain and provide debugging and troubleshooting support for J2EE applications on Jakarta Tomcat and BEA Weblogic platforms using EJBs, JSP, Tapestry, Struts, Velocity and Hibernate. Access web services and TIBCO bus services using Apache Axis, JDOM, Castor, BEA WLS clientgen.
  • Train and mentor new developers and SAs. Set up, administer and provide content for team technical wiki (JSPWiki).
  • Conduct JSP training sessions for co-workers.
  • Team Ant, CVS and unit testing guru.
  • Attend 2004, 2007, 2008, 2010 "No Fluff, Just Stuff" Java seminar. Attend 2010 “UberConf”.
  • 3 day Spring Framework training 2007.
  • 5 day ILOG JRules BRMS training 2008.
  • Implement Flash application bug fixes and updates for Qwest IP Network Statistics web site.
  • Take Macromedia Flash Training 'Fast Track to Macromedia Flash MX' and 'Design Techniques with Macromedia Flash MX' (total 5 days).
  • Research, develop classes for, debug and document large EJB application 'Universal DNS' using JBoss, Jakarta Tomcat and PostgreSQL. Some areas of special focus include Struts and JSP web-based user interface, SSL, servlet interface, database persistence, RCS persistence, database replication, deployment.
  • Take 5 day Sun Java class SL-351 Enterprise JavaBeans Programming.
  • Perform functional and performance testing of Merit RADIUS cluster. Develop test software in FreeBSD environment in tcl and C. Write test procedures.
  • Webmaster/DBA for IP Engineering intranet server.
  • Port old intranet server from Microsoft NT/IIS/MS-SQL to Solaris 8/Apache/Oracle.
  • Port ColdFusion applications.
  • Write web based Overutilization application in Perl using DBI, mod perl.
  • Write ad hoc Perl scripts on demand, mostly database ingest or database migration.

Education:

1990 MA in Linguistics

University of Texas - Arlington, TX

Thesis: I implemented a linguistics application called comparative reconstruction, a rule-based expert system written in Common Lisp on a Sun 3/60 workstation.

1981BS in Computer and Information Science

Syracuse University - Syracuse, NY