Robert S. Gregg's Resume

Robert S. Gregg

1416 North Abingdon Street

Arlington VA 22207

Web format: resume.html

Word format: resume.doc

Rich text format: resume.rtf

Objective

A career in software engineering and project leadership on the cutting edge of software and information technology.

Professional Experience

April 2002 to present - Navy Federal Credit Union, Vienna VA.

Supervisor, Home Banking Development, May 2004-present. Currently leading a team of developers maintaining Navy Federal's home banking systems. Responsibilities include the core Account Access system, as well as several dependent authenticated services. Current technologies used by our team include C++, Java, J2EE, WebSphere, Lotus Notes, and DB2. Our team is also knowledgeable in mainframe transport and Web-enablement technologies, such as IBM Host Publisher, Hostbridge, CICS Web Gateway, and so on.

Senior Systems Analyst, April 2002 to May 2004. Worked as lead developer on transitioning NFCU's web-based Account Access system under in-house control. Application was originally developed by a third-party vendor (IBM), and was to be transferred to in-house development and maintenance. Worked with the vendor and internal customers and technical staff to develop a plan for transitioning control, and worked on porting the application itself between compilers and development environments to support in-house development work. Also worked on functional, performance and security enhancements to the application in parallel with this effort. Performed analysis and documentation work in support of the migration effort, as well as helping develop the in-house development process (including source control, version and migration control, packaging processes, etc.). The project was written in C++ utilizing shared memory tables and DB/2, with some Perl and shell scripting. Technical work included experience with multithreading, SNA/LU62 communications, sockets and TCP/IP communications, HTML, CSS, Javascript, and others. Used several source control tools, including CVS and ChangeMan DS, during the course of the project. Other tasks included mentoring younger developers.

August 2000 to November 2001 - Acterna, Fairfax VA.

Senior Software Engineer. Worked with several other developers on network management software, to help develop a product to complement Acterna's existing network product suite. Primary responsibility was helping design and develop new functionality for Capacity Manager, an existing tool for analyzing telecom network performance and metrics, and enhancing it to perform real-time data collection and analysis for use with data (TCP/IP) networks. Also helped architect the development group's intranet development effort (including migration of document archives from NT and Novell to Solaris-based access), and served as technical mentor and supervisor for the development group's summer intern program. Other responsibilities included authoring requirements and architecture documents, providing technical recommendations for remote network access methods. Primary development was done in C, with some Perl and shell scripting. Technical work included experience with named pipes, multithreading, Oracle (8i) database, Samba, X-window client setup (Exceed, Go-Global, Xfree86), SNMP, others. Used several source control systems (SCCS, CVS, Perforce), as well as Remedy/Baystone tools for issue tracking. Also limited work with C++ and CORBA.

February 1999 to June 2000 - Bell Atlantic, Arlington VA.

Project Team Lead. Was brought in as a software engineer to help develop a CORBA-based interface system to allow outside companies wishing to compete in local service to access Bell Atlantic's operational support systems (OSS). The development of this interface was a key requirement for FCC approval of Bell Atlantic's entry to long distance in New York. Over several months, took over all responsibility for project tasks including software development, architecture and design, requirements management, project management, team leadership and oversight, production support, configuration management, documentation, interaction with clients (product management), and more.

Managed a team of up to three other developers during the course of the project. The project involved Solaris 2.5.1 and 2.6, C++ source code, Korn/Bourne shell scripts, Iona's Orbix and OrbixSSL products, sockets, multithreaded proxies and servers, and RogueWave libraries. Technical skills involved included use of x.509v3 certificates for the security framework, intimate knowledge of the CORBA 2.2 standard and Iona's proprietary extensions, basic Unix system and network administration, and use of System V standard packaging utilities for development of the production deployment framework and distribution. Architectural concerns included internal Bell Atlantic security standards (including communication across the Internet), distribution of components across Bell Atlantic's internal networks, interaction with numerous internal systems using various high-layer protocols over Unix sockets, and performance constraints imposed by outside agencies.

Additional accomplishments include being Bell Atlantic's representative on the standards board (TCIF/ECIC) responsible for the CORBA interface specification, and being representative to the organization's Software Engineering Process Group (SEPG). Received a special individual vice presidential award for accomplishments during the project.

August 1996 to February 1999 - BellSouth Telecommunications and Andersen Consulting, Birmingham AL.

Staff Analyst. Involved in analysis, design, implementation, testing, and maintenance of next-generation billing software for the Southeast's leading telecommunications firm. The software developed was critical for the success and business evolution of the company. Systems were written using C++ and involved very large Sybase databases interfacing with both graphical and batch interfaces through highly distributed, CORBA-compliant, three-tier client-server programs. Received professional training in C++, object-oriented analysis techniques, metrics gathering, and other software process issues. Gained experience in Unix, C++, Korn shell scripts, Iona Orbix, RogueWave libraries, SQL, and others. Acted as advisor and technical support for the team's software configuration management. Also provided testing support for early phases of the project, and some MVS/JCL work.

April 1993 to August 1994 - Parisian, Inc., Birmingham AL.

Programmer/Analyst. Developed software for credit, database, reporting, and accounting systems for a large retail firm. Systems were written using COBOL II and SQL on MVS-based IBM mainframes. Received professional training in SQL, DB/2, CICS, and other topics. Helped develop the organization's coding standard and documentation processes.

June 1993 to June 1994 - Target Teams, Birmingham AL.

Consultant. Worked with a local charitable organization to develop a PC-based database system that would perform mass mailings, maintain information about donors and donations, print receipts, and many other functions. The system used Paradox for Windows, which includes a visual, object-oriented language for building Windows database applications.

May 1989 to March 1993 - CSC Healthcare Systems, Birmingham AL.

Programmer/Analyst. Worked on large-scale software systems for health-maintenance organizations, medical clinics and hospital networks. Managed and maintained large subsystems of the company's software in COBOL and JCL. Developed the company's PC-based customer service bulletin board, and created remote login facilities for the company's AS/400 system. Worked on DOS/VSE, AS/400, S/36, and MVS-based IBM mainframe systems.

January 1988 to May 1988 - University of Alabama, Tuscaloosa AL.

Programmer. Worked part-time while in school to develop a PC-based graphical interface in C to display and manipulate information from a MapInfo database.

Summer 1987 and 1988 - BE&K Engineering, Birmingham AL.

Programmer. Worked as an intern for two summers, writing COBOL and C applications. Developed company capability for converting in-house applications to C, evaluating C compilers, libraries and development environments.

Education

August 1994 to May 1996 - Carnegie Mellon University, Pittsburgh PA.

Master of Software Engineering. This academic program includes an extensive curriculum, ongoing software studio work developing a real-world project, and direct interaction with the Software Engineering Institute and the authors of the CMM.

Classwork

Software process technology, software architectures, requirements engineering, software analysis, object-oriented design methodologies, networking, distributed systems, World Wide Web technology, multimedia technology, real-time software, software testing techniques, and others.

Project work

Included a distributed transaction processor, written in C, using Unix and RPC; a WWW-Telnet gateway, using a Java front-end and a telnet proxy server written in C; and our studio project, known as TUGV, which involved reverse engineering an existing 20,000 LOC system written in C, and porting it to Ada for use on a new hardware/OS platform.

Technical Experience

  • Ada, Java, C, HTML, Unix
  • TUGV Project Leader, two semesters
  • Studio Configuration Manager, one semester
  • Member of Studio SEPG, two semesters
  • Performed structured reviews for high-level and detailed design and code
August 1985 to May 1989 - University of Alabama, Tuscaloosa AL.

Bachelor of Science in Computer Science, with a minor equivalent in Mathematics. Numerous awards, including Outstanding Senior and Outstanding Junior in Computer Science. Student founder of the campus chapter of the Computer Science honorary society, Upsilon Pi Epsilon.

Other Skills

References

Available upon request.