Resume


Richard K. Campion

Contents

Richard K. Campion

Principal Software Engineer at ZdsLogic Technologies

Little Compton, Rhode Island, United States

About

Principal Software Engineer Computer Programmer
Network Administrator
Software Engineer
Senior Software Developer
Consulting Software Engineer
Consulting Software Architect
Principal Software Engineer
Full Stack Developer

Specialties: Information and Enterprise Technology:
Angular / Java / Spring Boot / using Eclipse, IntelliJ, Apache, OSGi, JSP, JPA, JTA, XMPP, VOIP, SIP, Video, TCP Protocols

Summary

  • Over 20 years of experience as a Software Engineer.  

    Currently working as a Full Stack Developer using Java, Spring Boot and Angular 2+ in an Agile Environment.

Skills

  • Programming Languages: Java, TypeScript, C++, C

  • Operating Systems: Linux, Windows, DOS

  • Integrated Development Environments: Eclipse, Intellij IDEA

  • Modeling: Eclipse EMF/XSD/UML, Papyrus, ArgoUML

  • Persistence: JPA, Hibernate, JDBC, RDB, SQL, MongoDB, XML, JSON, CSV, TEXT, HDFS 

  • Database Tools: DBeaver, JBoss / Hibernate Tools, MySQL Workbench, SQLExplorer, Squirrel, Eclipse Database Tools

  • Reporting / BI: Eclipse BIRT, PDFBox, iText

  • Frameworks: Spring Boot, SpringMVC · 

  • JEE: Containers: Tomcat, Glassfish, JBoss, Jetty, Geronimo, Jetty Embedded · HTTP: NGINX, Apache · OSGi: Equinox, Felix, Virgo · 

  • Web Development: Java, Typescript, JavaScript, Angular, HTML5, CSS

  • Web Services: Spring, REST, JAX-RS, JAX-WS, Axis2

  • JavaScript Frameworks: Angular, Dojo

  • Embedded Devices: Linux, Java / Android, C/C++

  • Imaging: GIMP · 

  • VOIP: Asterisk PBX, Sangoma hardware · 

  • Messaging: XMPP: Openfire, Smack · 

  • Source Control: GIT, GitHub, GitLab, Rational Team Concert, Jazz, ClearCase, Subversion, MKS, SourceSafe · 

  • Build Systems, Maven, Ant, Make · 

  • Network Management Systems: OpenNMS, Zenoss · Virtualization: VMware, VirtualBox

  • Cloud: AWS, EC2, Docker, Spring Boot

  • SSO: Keycloak, OpenAM

  • Visualization: Real Time WebSocket server, Angular 12 + D3 · 

  • Enterprise Search: ElasticSearch. Logstash, Kibana

  • Agile: Daily Standups / Backlog Refinements

Experience

Principal Software Engineer

ZdsLogic Technologies

Jul 2019 - Present

Little Compton, Rhode Island, United States

  • Extend the Oauth Resource Server to become the Backend for the new ZdsLogic Technologies website.

  • Extend the Oauth Angular Contacts application.to become the Frontend for the new website.

    • Developed Real-Time Http Access and Error Log displays.

    • Developed Visualizations using D3 and Angular.

    • Developed the ability of users to see User Connections/Contacts who are logged in.

    • Add Chat for Connections.

    • Enhance the business to become a Technical Recruiting resource.

      • Developed the backend and frontend of the Profile pages for all existing Contacts and new Users.

      • Developed the Career Pages

        • Resumes / Resume Upload / Resume Parsing

        • Jobs

      • Software Engineer

        REI

        March 2021 - Present

        Remote

      • Software Development in an Agile Team 

      • Angular Enhancements

      • Java / Spring Boot Enhancements · 

      • ElasticSearch, Logstash, Kibana Software

      • Senior Software Engineer

        ZdsLogic Technologies

        January 2014 - June 2019

        Little Compton, Rhode Island

      • Systems Integration

      • Install, Configure IT Infrastructure ·

      • Install, Configure XMPP and Video Conferencing ·

      • Install, Configure SSO Development ·

      • Backend

        • Oauth Resource Server

          • Frontends

            • https://github.com/rcampion/oauth-ui-angular-articles

              • Cloud: AWS, EC2, Spring Boot, Docker ·

                • http://aws.richardcampion.com/articles

                • http://aws.richardcampion.com/contacts

                • Real Estate Website improvements

                  • Added Open House listings to the website. ·

                  • Added Lightbox image displays.

                  Software Engineer

                  Siege Technologies

                  October 2019 - December 2019

                  Remote

                  • Software Development · Angular JS Enhancements · Java / JEE REST Endpoints Software

                  • Software Engineer

                    Telos / Air Force

                    January 2018 - September 2018

                    Bedford, MA

                  • Systems Integration

                  • Integrate a JEE application with SSO/OpenAM · 

                  • Debug initial implementation and provide feedback regarding defects of the integration effort. · 

                  • Establish SSL connectivity to the SSO service.

                  • Execute a complete test plan for the QA team. Software

                  • Software Engineer

                    Northrop Grumman

                    June 2015 - September 2016

                    Providence, RI

                  • Develop ETL programs to convert text documents to PDF documents using various Open Source tools.

                  • Retrieve data from SOAP endpoints.

                  • Populate RDBMS with document metadata into Oracle database.

                  • Developed a Spring/MVC/JSP application to query the database and display PDF files in the browser.

                  • Software Engineer

                    Promptus Communications

                    August 2011 - June 2015

                    Portsmouth, RI

                  • Install, Configure, Enhance and Monitor IT Servers:

                  • Assist in the development of prototypes for business development.

                  • Designed and developed a Distributed Logging Event collector and viewer(s). · A wireless device (TI-MSP430) transmits events to a local device (Java Agent) · Remote agent(s) store common formatted log entries and forward events to a server. · Java Middleware (JPA/JNDI/Hibernate) deposits log entries into a database. · Data can be exported to a Spreadsheet and/or CSV format for further analysis by third party tools. (SciLab). · Develop and Enhance front-ends and back-ends. 

                  • Back-ends:

                    •  HTTP server fronts all Web Access. · MySQL server provided data persistence. 

                    • Front-ends: · 

                      • Front-end 1: A Spring MVC / JSP / JavaScript/ Glassfish / thin client secured by Spring Security

                      • Front-end 2: An Eclipse RCP/SWT/JFace thick desktop client.

                      • Front-end 3: An Eclipse RAP/RWT Rich Internet Application (RIA) client.

                      • Front-end 4: An Eclipse e4 RCP/SWT/JFace desktop client. Software

                      Senior Software Engineer

                      IBM

                      December 2010 - July 2011

                      San Jose, CA

                      • Sr. Developer in SDM team, involved in development and maintenance of the SDM Costing Tool.

                      • Implemented bug fixes to the Eclipse RCP product as directed by the Agile team. 

                      • Enhanced the product with the ability to upload and download documentation files. Consulting Software

                      • Software Engineer

                        Promptus Communications

                        April 2009 - December 2010

                        Portsmouth, RI

                      • Developed a SATCOM Simulator based on Asterisk for an Aeronautics Telephony provider.

                      • Implemented VOIP servers. · 

                      • Installed and configured SIP and POTS clients. Software Engineer / Contractor

                      • Software Engineer / Contractor

                        Mercury Computer Systems, Inc.

                        September 2008 - April 2009

                        Chelmsford, MA

                      • Assisted in the development of a desktop user interface by creating Eclipse plugins.

                      • Created Rich Client App (RCP / SWT / JFACE) dialog boxes. · 

                      • The Eclipse plugin is a GUI, designed to easily define embedded cluster domains and configure a distributed computer by selecting Linux OS boot images for each member of the cluster, and set common settings like network configuration parameters. ·

                      • Created an Eclipse plugin to persist data as XML via JAXB. · 

                      • Created an Eclipse plugin to view error logs. 

                        Web Developer

                        Self Employed

                        December 2006 - August 2008

                        Portsmouth, RI

                        • ·Spring MVC, JSP.

                        • Software Engineer

                          Curtiss-Wright

                          September 2006 - November 2006

                          Leesburg, VA

                        • Assisted in the development of Eclipse plugins for an RCP desktop user interface.

                        • This prototype is a toolkit, designed to discover/view/monitor/record and view hardware and events. 

                        • Event data was logged and stored into SQL Network and Embedded databases.

                        • Implemented using Java/Eclipse/JFACE/SWT as a Plug-in and later packaged into a standalone Rich Client App (RCP).

                        • Software Engineer

                          Staples

                          August 2005 - November 2005

                          Framingham, MA

                        • Developed a System Migration Utility to transfer system data from previous to current releases of Symantec/ On Technology's CCM/iCommand product(s). · 

                        • The tool was developed using Java/Eclipse/Apache-Derby as the persistent local RDBMS. · 

                        • The utility transferred data via a 1:1 table/element mapping Sybase RDBMS. · Design Tools: Apache DB tools, DdlUtils, Torque, and Turbine were used to generate the XML/XSD db schema to generate (ETL) of the data access into the Derby database for data modeling. · Eclipse EMF Ecore database schema. Eclipse BIRT was used to display and report logs.

                        • Software Engineer

                          i7Logic

                          December 2004 - January 2005

                          Portsmouth, RI ·

                        • Developed a Data Warehouse using MySQL as the SQL server, client DB tools in C++ for data field formatting, syntax checking, raw data importing and formatted data exporting into the SQL server. · 

                        • Created a Tab Delimited Text File Parser using lex & yacc in C/C++ to syntactically verify the data prior to database population. The parser performs data cleanup, data type primitives' detection, and data transformation from ASCII tab delimited files form that can then be utilized by SQL import tools. · The parser informs the user of data anomalies, allowing the user to make correction. Optionally, the parser produces a XML database schema for use by third-party software, in this case, Torque, to generate SQL scripts and Java business model code. · Created a native client db query tool in MSVC++ and ODBC. · 

                        • Developed a J2EE web application for database views and reporting based on the portal/portlet framework of JetSpeed which builds upon the following Open-Source technologies: Java, JSP, JDBC, Apache Torque, Turbine, and Velocity, and deployed within a Tomcat container.

                        • Software Engineer

                          Symantec / On Technology

                          February 2000 - December 2003

                          Waltham, MA ·

                        • Maintained and enhanced Visual C++ Win32 and Borland C++ GUI's. · 

                        • Developed On Command CCM syntax checking enhancements,cross platform,Windows, Solaris, HP, and Linux. Developed/Maintained platform independent C/C++ static and dynamic component libraries. · Maintained and enhanced various command-line software distribution package development tools, developed using Visual C++ 6.0 while utilized Borland C++ Builder to develop front-end GUI(s) as a view to each command-line executable. · 

                        • Developed a keyboard recorder to capture user keyboard actions and screen snapshots. · 

                        • Implemented severity levels within error and log reporting. · 

                        • Corrected defects as reported within a bug database. · 

                        • Prototyped Java GUI's for the proposed next release of DevStudio using JBuilder, NetBeans, and Eclipse. · 

                        • Developed parser libraries to verify the validity of system configuration data. (CCM v4.5 - v 5.6) · 

                        • Developed internal command line and GUI tools to import parsed text data into a relational database. 

                        • Network Administrator

                          Edwards & Angell

                          January 1990 - December 1994

                          Providence, RI

                        • Transition IT Infrastructure from WANG-VS to PC-Network · 

                        • Installed CAT-5 Wiring, Patch-Panels, Hubs, Servers and Clients · 

                        • Installed Sybase Server · 

                        • Administrated a Novell 4 Network. COBOL Programmer

                        • Computer Programmer

                          Johnson & Johnson

                          February 1987 - June 1989

                          Randolph, MA

                        • Developed COBOL programs for Finance and Marketing.

                        • Computer Programmer

                          TRINA Mfg

                          September 1985 - January 1987

                          Fall River, MA

                        • COBOL Programmer

                          Developed an Order Entry System