Steven S. Morgan, Developer in Heathrow, FL, United States
Steven is available for hire
Hire Steven

Steven S. Morgan

Verified Expert  in Engineering

Multithreading Developer

Location
Heathrow, FL, United States
Toptal Member Since
July 9, 2013

Steven is an expert Java architect and freelance developer with extensive experience in distributed architectures, scalable solutions, and flexible and maintainable designs. He is a team player with a knack for interacting well with diversity. He leads via his expertise and by the example he sets.

Availability

Part-time

Preferred Environment

Bugzilla, Jira, Git, Subversion (SVN), Emacs, Eclipse

The most amazing...

...success I've had was in proving and working around the root cause of an intermittent yet critical bug in a high-stress situation.

Work Experience

President & CEO

2006 - PRESENT
Morgan Ventures, Dealings, and Holdings, Inc.
  • Formed Morgan Ventures, Dealings, and Holdings, Inc. in 2006 to allow me to pursue my multiple passions and varied interests as a business professional. Clientele and revenues supported full-time employment for myself beginning in 2014.
  • Engaged in software engineering, Java development, full software development life cycle, and technical documentation. Clientele includes Apple as a subcontractor of Catapult Consulting. Contributed to the iTunes Connect application used by content creators to manage and sell their products and services via iTunes.
  • Did hypnosis and neurolinguistic programming for weight loss, smoking cessation, fear reduction, pain management, emotional conflict resolution, behavior modification, group sessions, seminars, spiritual exploration, education, training, and entertainment.
  • Designed and hosted websites, including static and dynamic web page design, integration with third-party services, dedicated hosting on virtual servers, and domain management.
  • Repaired computers and trained people, installing and configuring hardware and software, cleaning and optimizing existing systems, and backing up/restoring data.
Technologies: Eclipse, Java

Senior Enterprise Architect

2013 - 2014
MGM Resorts International
  • Designed and implemented a REST (Representational State Transfer) interface to our in-house Mlife database. In order to address scalability limitations of the existing implementation, the new design utilized Hypermedia As The Engine Of Application State (HATEOAS) to model Java Persistence API (JPA) relationships. The use of Spring, JUnit, introspection, and naming conventions allowed for an implementation with minimal code, easy extensibility, and integrated validation for future additions and modifications.
Technologies: Java

Senior Principal Software Engineer / Software Architect

2011 - 2013
CA Technologies
  • Developed and maintained the LISA testing platform including the LISA Workstation, the Virtual Service Environment, and the web front-end consoles, all implemented in Java.
  • Developed processes focused with heavy emphasis on Agile Scrum development in two-week sprints. Technology and challenges involved SSL, Apache's HttpClient, Google Web Toolkit (GWT), internationalization (i18n) and localization (l10n), automated testing, concurrent processing, and the very large and complex codebase that comprises the LISA product line.
  • Pursued better real-time collaboration with co-workers, which proved to be very helpful as we had a geographically diverse team.
  • Emphasized better communication and retention via issue tracking.
Technologies: Java

Senior Software Engineer

2010 - 2011
Voxeo
  • Brought together skills and expertise in Java along with recent experience with voice technologies.
  • Designed, developed, and maintained the Tropo product. Tropo allows developers to create their own voice applications in languages they already know including JavaScript, Ruby, Python, PHP, and Groovy. Voxeo hosts Tropo applications as well as allows on-site installations, so a variety of deployment strategies were required to be understood and maintained. At beginning, Tropo was emerging from incubation and job was to help shepherd it to maturation.
  • Implemented the eventing mechanism allowing voice applications to signal interrupts to their code.
Technologies: Ruby, Groovy, PHP, Python, JavaScript, Java

Engineer IV/Staff Engineer

2005 - 2010
Convergys/Intervoice
  • Implemented a pure-Java engine implementing the State Chart XML (SCXML) specification. This was a challenge particularly because the specification was still being developed, therefore predictions about the future course of the specification had to be made. High scalability and availability were important non-functional requirements as were maintainability and schedule. The implementation included integration with the Eclipse IDE, notably including integration with the Eclipse debugger. Integration of the engine with the other pieces of the Voice Portal architecture was also key, particularly the CCXML and VXML implementations.
  • Received strong commendations for my ability to interact and communicate effectively while accomplishing the requirements for the project, although the team members were located in Dallas while I remained in Florida.
Technologies: SCXML, Java

Adjunct Instructor

2002 - 2010
Seminole State College
  • Presented and lectured to aspiring Java programmers at the local community college, drawing on experiences in Toastmasters and in college. Goal in doing so was to improve the understanding and the quality of Java developers.
  • Taught the fundamentals of Java syntax, object-oriented programming concepts, the Java virtual machine, Swing, and applets in the basic Java course.
  • Taught an Advanced Java course as well, delving into network communications, multithreading, synchronization, and multimedia, and the many more complicated issues associated with them.
  • Taught the syntax of the language in a C++ course as well as the theory and application of object-oriented design.
Technologies: C++, Java

Software Engineer Consultant

2004 - 2005
Robert Half Technology/Starwood Vacation Ownership
  • Analyzed an external vendor's J2EE implementations of customer-facing web sites as a consultant to Starwood Vacation Ownership. Analysis required learning and using IBM WebSphere as well as Oracle 8i.
  • Adapted the applications' build processes to use Ant in order to standardize and automate the build, deployment, and testing processes as well as to eliminate the dependency on the costly IBM Websphere AppServer System Developer (WSAD) product.
  • Extended an existing application with a customized email client and server to support customer support and marketing efforts.
  • Helped to introduce software engineering processes and concepts including Extreme Programming (XP) concepts, unit tests, automation, object-oriented development, and intimate understandings of non-functional requirements and the way they dictate design decisions.
Technologies: Java

Technical Specialist

2001 - 2004
AAA
  • Deployed a Java 2 Enterprise Edition (J2EE) and Oracle-based solution to the Tourbook data repository data-entry application. Hundreds of Java Server Pages, servlets, and Enterprise Java Beans, both session and entity, coordinated in this solution with Oracle Application Server 10g as the target environment.
  • Implemented source code control, issue tracking, and build management using CVS, Bugzilla, and Ant. JUnit and extreme programming methodologies produced a unit testing framework that Ant could also drive as an autonomous regression test.
  • Implemented Java extensions to the Epic editor, stylesheet extensions, and a smaller web application consisting of JSPs and servlets deployed to Oracle Containers for J2EE. Swing, JDBC, JAXP, and the DOM model were prominently featured. I also conducted training and orientation sessions for our in-house Bugzilla implementation.
Technologies: XSLT, XML, Java

Team Lead / Staff Engineer

1998 - 2001
Objectspace
  • Led technical and managerial oversight of the critically acclaimed Voyager ORB. Many powerful and novel technologies underlay Voyager including distributed programming, dynamic code generation, multi-protocol remote proxies, mobile agents, and facets. Many of these technologies led to patent applications, which I was asked to help file. Along with proprietary methods, Voyager could simultaneously interact with CORBA and RMI, even using security and transaction services. The Voyager ORB also underpinned the implementation of the Voyager Application Server, one of the first to support the entity beans specifications.
  • Contributed, as a software architect and engineer as well as a troubleshooter, to things that led to several high-profile customer-site visits, including OnStar in Detroit.
  • Insisted, despite external pressures, on utilizing the proper application of object-oriented analysis and design methodologies and sufficient quality controls including unit testing and regression testing.
Technologies: CORBA, Java

Senior Software Programmer

1998 - 1998
OAO Services/InSys Group
  • Spent 6 months working from home on two 3-month contracts for InSys in Paris, France. For each contract, InSys gave me a set of requirements with a reasonable deadline, and I was responsible for the rest. The requirements were based on InSys' pure-Java web browser-based document and workflow management system. The initial project utilized JDK 1.1, the Abstract Windows Toolkit (AWT), complex data structures, and serialization.
  • Upgraded the first project to the 1.2 platform, the Java Foundation Classes (JFC, or Swing), and the Java Naming Directory Interface (JNDI).
Technologies: Java

Senior Software Engineer

1996 - 1998
Harris Corporation
  • Became a key developer on the Harris Network Management product line. In particular, I was the specialist in Simple Network Management Protocol (SNMP) and Telecommunications Network Management standards.
  • Implemented C/C++-to-Java communications via sockets and from that built a Java applet as a front-end to our monitoring system when asked what Java could add. The aesthetic appearance of the applet proved to be more popular than the original C application on which it was modeled. Further interest in Java development led to me becoming the in-house expert on Java and suggesting ways to integrate with our existing products.
Technologies: C++, C, Java

SCXML Working Group

http://www.w3.org/TR/scxml/
As the developer of Intervoice's SCXML engine, I was asked to sit on the SCXML Working Group when Intervoice joined the Voice Browser Working Group. I participated from 2007 to 2010. I was not given any byline credit since my proposals were not included in any of the drafts, however the SCXML engine I did design for Intervoice was fully compliant with the first three proposed drafts of SCXML. Since Intervoice only used the engine internally, we were not in position to drive the specification.
1994 - 1997

Master of Science Degree in Computer Engineering

University of Florida - Gainesville, FL

1989 - 1994

Bachelor of Science Degree in Engineering Science

University of Florida - Gainesville, FL

Libraries/APIs

AWT, Java Servlets, JDBC, JNDI, JMS

Tools

Apache Tomcat, Apache Ant, Eclipse IDE, Subversion (SVN), JConsole, Bugzilla, Jira, Emacs, CVS, Apache Maven, GitHub, Git

Frameworks

Swing, JUnit, JavaBeans, Spring, Jakarta Server Pages (JSP)

Languages

XML/XSLT, XML, Java, SCXML, Java 8, SQL, Groovy, Python, Ruby, XSLT, C, JavaScript, C++, PHP, Perl, JRuby, Jython

Paradigms

Distributed Computing, Parallel Computing, Concurrent Programming, Design Patterns, Object-oriented Programming (OOP), Asynchronous Programming, Incremental Development, Unit Testing, Distributed Programming, REST, Agile Software Development, Spiral Development, Waterfall Development, Inversion of Control, Dependency Injection, Continuous Integration (CI), Event-driven Programming, Test Automation, Test-driven Development (TDD), Extreme Programming, Scrum

Platforms

JSE, J2SE, Java EE, Linux, Red Hat Linux, Unix, Eclipse, MacOS, Oracle, Windows, JBoss

Storage

JSON, MySQL

Other

WebSockets, Multithreading, Architecture, Mathematics, log4j, Unix Shell Scripting, Web Standards, TCP/IP, Transmission Control Protocol (TCP), Enterprise Java Beans (EJB), CORBA, Ajax, Regular Expressions, SOAP, UDP, Web Server Development, Web Services, XMPP

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring