Lewis Cawthorne
Senior Software Developer at EXL, working on the Subrosource platform.
Degrees
Masters of Engineering, Computer Science, University of South Carolina, Columbia, SC, Dec 2014
Specialization: Information Security
BS, Computer Science, University of South Carolina, Columbia, SC, Aug 2011
Minor: Mathematics
AS, High Honors, Midlands Technical College, Columbia, SC, May 2009
Professional Employment
Senior Software Developer and Technical Lead, EXL, Jan 2015 - present
- Long-tenured technical contributor on the Subrosource platform, now over a decade with the team
- Platform lead for Subrosource Classic (the original Java EE / Oracle-based application) and a contributor on its ground-up replacement, built on an OSGi backend (started on Java 11, now on Java 25) with an Angular frontend, backed by Microsoft SQL Server, hosted on AWS, with infrastructure supported by HashiCorp tooling (Vault, Consul, Nomad)
- Maintain operation of Subrosource Classic and ensure it gets yearly security patches, in addition to new development work on its replacement, ahead of an eventual customer migration off the older platform
- Extensive experience with Oracle and PL/SQL; independently designed, wrote, and performance-tuned a large PL/SQL package, including deep dives into Oracle internals to resolve performance issues
- Using AI-assisted development tools day to day, including GitHub Copilot, Cursor, and Claude Code
- Took a leading role in an agile group with seven developers acting within a larger corporate organization to provide software and services to insurance domain customers
- Updated Subrosource Classic from Weblogic 10.3 to Weblogic 12 and from Java 1.6 to Java 1.8
- Maintained, extended, and helped secure the Subrosource Classic Java EE 5 application on Oracle WebLogic Application Server and Java 1.6 backed by an Oracle 11g database
- Performed security scans with HP Fortify software and patched found vulnerabilities
- Developed a web application to provide insight to support technicians debugging general data import issues with JDK 8 and Java EE 7 technologies running on Glassfish 4.1 Application Server with a Vaadin GWT-based rich user interface accessing an Oracle 11g database and custom scripts to extract text log information
- Researched and made recommendations on ways to ease development team growth pains by better incorporating automated unit, integration, and acceptance testing
- Wrote, tested, and debugged a batch process based on preexisting procedural logic to on-board a new customer by cleaning, transforming, and importing 80,000 customer claim records which were split up to over half a million relational table entries; primarily handled through the creation and integration of new awk processing scripts, some modification of a C# account registration program, and PL/SQL customizations in the database to handle customer specific account logic
Teaching Assistant, University of South Carolina, Aug 2012 - Dec 2014
- Fall 2014: Lecture Instructor for CSCE 212 - Intro to Computer Architecture (Assembly)
- Summer 2014: Lecture Instructor for CSCE 146 - Data Structures Using Java (Java)
- Spring 2014: Lecture Instructor for CSCE 212 - Intro to Computer Architecture (Assembly)
- Fall 2013: Lecture Instructor and Lab TA for CSCE 101 - Intro to Computing (Java)
- Spring 2013: Lecture Instructor for CSCE 204 - Program Design and Development (Visual Basic)
- Fall 2012: Lab TA for CSCE 145 - Algorithmic Design (Java)
Research Assistant, Center for Information Assurance Engineering at USC, Aug 2011 - Dec 2014
- Quantum Complexity Theory research advised by Dr. Stephen A. Fenner
- Analyzed algorithms which require quantum computers and how problems solvable via quantum algorithms, such as factoring, differ in structure from classical problems
- Studied quantum entanglement effects on classic two party game theory
- Investigated mutually unbiased bases for secure quantum key distribution
- Expanded a C program for web based analysis and graphing of lambda closure functions including a LaTeX based formula parser
REU Program Coordinator, Research Experience for Undergraduates at USC, Aug 2011 - Aug 2013
- Coordinated summer housing and activities for 10 undergraduate participants
- Guided participants through all steps of creating and submitting an academic paper
- Offered proofreading and implementation advice on 10 papers from 7 different subareas
Undergraduate Research Assistant, MLEG Lab at USC, Jun 2010 - Aug 2011
- Created SMEE, the Sorting Motif Extraction Engine, a biomedical text analysis service using Python for Natural Language Processing and Django web framework
Linux System Administrator, EMR Technical Solutions, Feb 2010 - Jun 2010
- Setup various server applications on three Linux servers
- Managed security on servers, including detection / elimination of prior intrusion
Network Administrator, Wave Communications / Durocom / Volaris Online, June 1995 - Sept 2002
- Lead the building of what quickly became a 3000-4000 customer Internet provider
- Maintained 14 high volume servers running multiple operating systems
- Participated in a 24-hour emergency response on call rotation
- Supervised a team of 20-40 technical support representatives
- Ultimately shared primary responsibility for a $10-million regional ISP with a co-administrator, which was acquired by a super-regional provider and then by Earthlink
Database Administrator, Doulos Productions, Apr 1992 - Nov 1996
- Created and managed a 100,000 record relational database
- Managed a VM386 based dumb terminal multiuser system
Technology Applications and Expertise
Current Focus: OSGi, Angular, Microsoft SQL Server, AWS, HashiCorp Vault, HashiCorp Consul, HashiCorp Nomad, AI-assisted development (GitHub Copilot, Cursor, Claude Code)
Specialized Skills: Java EE, EJB2, EJB3, JSP, JSTL, JSF, RichFaces, JTA, JPA, Layered Architectures, Agile Development, Information Security, User Testing, Full-stack Web Development, Version Control, Web Design
Markup/Programming: Java, Python/Django, JavaScript, JQuery, Ruby/Rails, XHTML, HTML5, CSS, CSS3, XML, XSLT, Perl, Awk, PL/SQL, Shell Scripting
Applications: Eclipse, IntelliJ, Microsoft Office, HP Fortify Security Scanner, Google Drive, Vim, Oracle 9i-11g, Selenium, Git, Subversion, WebLogic 10.3 - 12, Glassfish 4
OS/Environments: Mac, Linux, Unix, Ubuntu, Windows
Certifications
CNSS 4011, National Training Standard for INFOSEC Professionals
Awards
- Presidential Graduate Fellowship, University of South Carolina, Aug 2012 - Apr 2014
- Magellan Scholarship Winner, competitive research funding, Jan 2011 - Aug 2011
- Outstanding Senior Award, University of South Carolina, Apr 2011
- IBM Master the Mainframe Competition, winner Parts 1 and 2, Dec 2010
- ΥΠE Scholarship Winner, competitive scholarship, Aug 2010