Global Management Services, Inc. (GMSI) | September 14, 1998 to June 1999 | Alexandria, VA
Hired as: Technical Design Engineer
Advanced to: Junior Computer Specialist
GMSI was acquired by Dinocrates Group on September 10, 2019.
Junior Computer Specialist / Web Application Developer — U.S. Military Portal (GMSI)
Built and engineered early web-based military portal systems during the formative years of government internet adoption. Converted critical DoD paper workflows into secure, dynamic, printable online applications that precisely matched official forms, pioneering CSS2 print control, DHTML, Scriptlets, ActiveX integration, PKI authentication, LDAP/ADSI identity services, and multi-tier Windows DNA architecture. Expanded rapidly beyond HTML into Classic ASP development, SQL Server database design and administration, distributed COM programming, and enterprise transactional systems—helping shape one of the earliest secure online military leave and workflow systems.
Information
Website: https://www.gmsi.com
Title: Jr. Computer Specialist
Hours: 9 am – 6 pm, Monday through Friday
Phone: (703) 416-8629
Fax: (703) 416-4443
Email: lewis.moten@gmsi.com
Reflection
Initially composed: January 1, 2026
This is a bit long—I’m trying to work out everything I can remember from my first professional IT job, 27 years later.
CSS Printing Extensions
My first job was to convert a paper form into a web page and ensure it printed exactly the same. Sometimes I would query the newsgroups, such as Deja, for help with the Printing Extensions recommended for CSS2. At the time, controlling the format of web pages for printers was not yet a standard.
Role Change
Somehow, along the way, my title shifted from a Technical Design Engineer to Junior Computer Specialist. Web development was maturing, and I wasn’t simply doing technical writing; I was developing code. I don’t know when or why it happened. There was no difference in compensation, and I suspect it was more likely to align with contractual requirements as people left the project and I took on additional responsibilities.
Precursor: Marine Online
Before working for GMSI, my brother had worked alongside the company. I was a prep-cook at Ruby Tuesday’s while living with him and his wife. He and I spent most of our time at home programming websites or software. I created a search engine that ran on Microsoft SQL Server. I was always making graphics for different websites and friends. He had GMSI reach out to me about some freelance graphic work for a portal, Marine Online (MOL).
There were a few back-and-forth exchanges between what they wanted and what I proposed. They mainly needed graphic buttons to navigate the portal’s main areas, and modal dialog buttons that glow when hovered over and show when you press the mouse down. They also wanted some animated banners. Bandwidth was a concern, so most of the submitted work included file sizes, along with an ugly background color to convey transparency. It was my first freelance job with a big company. I was happy enough to get paid.
Interview
My brother let me know that the company was hiring for a similar project, and encouraged me to apply for the position.
When they called me in for an interview, the bus ride to their headquarters took two hours. The headquarters was at 6707 Democracy Boulevard, Suite 200, in Bethesda, MD, and I lived on Stevenson Avenue in Alexandria, Virginia, near CompUSA and across the highway from Landmark Mall.
From what I recall, the owner began developing home security systems and eventually founded a technology company that secured government contracts. They also had qualifications for minority business owners, which helped them secure government contracts.
Home automation interested me quite a bit because I had delved into it with X10 modules in the past, but more as just an experiment with programming lights and appliances with Visual Basic, with no real-world applications. I plugged something into my PC’s serial port. If the interview was a real conversation, we definitely didn’t discuss X10 tinkering, because I would have remembered that.
Navy: Warrior Online



Warrior Online (WOL) is the primary project that I worked on. I’m uncertain if the name changed from MOL or if this was a separate portal. The graphics I submitted were never used on this portal, and the team had their own web designer who used Macromedia Dreamweaver to create graphics with a WYSIWYG interface and perform some animation. However, I preferred writing the underlying code myself, and I did not work on any graphic design for this project.
Initially, I was hired to convert a physical document for leave requests into an online web page that matched the print appearance, both visually and when printed. They stressed that this was very important, that it must be the same when printed. There were various workarounds, such as hiding ActiveX controls and revealing hidden input fields when printing. CSS2 Printing Extensions were introduced around this time, giving me better control over a printed document and keeping it reasonably close to the original. Scriptlets were also introduced around this time and were used in the interface to create two list boxes that allowed you to move single, multiple, or all items from one to the other. Scriptlets were more like sandboxed ActiveX controls, except they were web pages. They acted like iFrames, except that you could expose properties and events, just like an ActiveX control, to send and receive data from it.
The digital document was configured to follow an individual’s chain of command, so that the next level of command was notified when it was their turn to approve the document. Individuals higher in the chain of command could step in and approve the request or override denials from lower-ranking officers, allowing the document to bypass them.
Much of my focus was on limiting the resources necessary for the client to download. Separating style into CSS files and logic into JavaScript files was part of this, as well as reducing the need for images where possible. I used the Webdings font to work around the need for images, since it was widely used. I often worked with beta software and technologies on this project, addressing problems that had not yet been solved or optimizing bandwidth requirements. Dynamic HTML (DHTML) and Scriptlets were part of this solution, introduced in Internet Explorer 4.
MSIE4 had minimal capability for printing. You could define a separate linked stylesheet for print vs screen media. The browser was limited in what worked and didn’t. We used ActiveX controls to enter data on the screen, but when printing, the other stylesheet would hide the ActiveX controls and display a hidden input field bound to them. Another workaround for the printing issues at the time was to add the “viewastext” attribute to object tags to fall back to the text equivalent of an ActiveX control. In addition to custom ActiveX controls for rich interaction, I used third-party components such as Infragistics date and time editors.
Smart cards used today (2026) to identify us, or the square metal chip embedded in credit & debit cards, were still in their infancy. We worked with a Lightweight Directory Access Protocol (LDAP) server and Active Directory Service Interface (ADSI), as Active Directory had not yet been introduced. Members would be retained in an LDAP server. We worked with vendors such as GemSAFE smart cards to implement technology that allowed users to authenticate with an embedded X.509 certificate against the MCIS certificate server and interact with Active Directory User objects (ADU) to access personalized user information, such as their name. I was learning about Private Key Infrastructure (PKI), how asynchronous cryptography works, how to request and install certificates, and how to set up a certificate authority (CA) to issue them. A web server used a certificate to authenticate itself over HTTPS, but the client’s smart card stored the user certificate’s private key to identify the client to the server.
Although I was hired primarily as an HTML developer, my skill set was broader, and I quickly adapted to various roles. Initially, I used Allaire HomeSite for HTML editing and Microsoft Visual InterDev 6 as my IDE when I needed to start working with Active Server Pages 2.0 (now known as Classic ASP). Classic ASP supports other languages, but VBScript has always been the predominant language. At the time, I was using VBScript 2 and later upgraded to VBScript 5 (via Internet Explorer 5), which added object-oriented encapsulation, improved COM integration, supported regular expressions, and delivered faster execution with lower memory usage. The jump between 2 and 5 was normal – Microsoft didn’t release versions 3 & 4. I was also working with Microsoft Commercial Information Server (MCIS), which was broadly similar to Microsoft Internet Information Server (IIS), which was more widely known at the time. MCIS offered personalization and membership services to manage user accounts and deliver personalized content, and it scaled better. I also worked with Microsoft Windows NT 4.0 to set up and configure these services while running Windows 95 on my workstation.
After working in ASP programming, I moved into a DBA role with Microsoft SQL Server 6.5. I architected the database as needed by creating tables, views, and stored procedures, and guided the team on optimal database normalization practices to ensure data integrity and efficiency. As a self-taught database developer, I didn’t yet know there was an academic name for normalization– the concepts of one-to-one, one-to-many, and many-to-many relationships simply felt intuitive.
I also built transactional components in Visual Basic 6 using Distributed COM (DCOM). I configured Microsoft Transaction Server (MTS) with Microsoft Distributed Transaction Coordinator (MSDTC) to enable database rollback when business logic failed. We referred to this as a “3-Tier system,” with business logic running separately from the web presentation layer and database. Only later did I realize Microsoft was branding this stack (NT + IIS + ASP + COM + MTS + SQL Server) as Windows DNA – Distributed interNet Applications Architecture – borrowing from the DNA headlines of the era: the Human Genome Project, gene therapy, DNA sequencing, and even movies like Gattaca.
Microsoft Certifications
It seemed like Microsoft Certifications were all the rage at the time. Without a college degree, I thought maybe getting something would help. Around April of 1999, I went for testing for Microsoft Visual InterDev 6.0 and Microsoft FrontPage, which qualified me for the MCP and MCP+SB designations, and perhaps the easiest designations to acquire. I had failed my first attempt at MS Interdev and passed FrontPage, which I had never used or studied. With the high costs of the tests, the time needed to visit a physical location during work hours, and the experience, my faith in the certification system was lost.
Moving Offices
Initially, we operated from a small on-site office in Old Town Alexandria, Virginia. Eventually, we moved to the north end of Crystal City, VA – a few blocks from the walking tunnels. I believe it was around Crystal Drive and 12th Street, likely closer to the client, since the Pentagon was practically across the street.
The move to a large professional business building was very humbling. I didn’t feel like I belonged; I had to dress “business casual,” and it took longer to travel by bus. I’m guessing it was around this time that my official job title changed as well to clarify who was working on the contract. Thankfully, we didn’t move closer to the headquarters in Bethesda, MD, because the distance was a two-hour bus ride.
At the time, we also had Internet access via a large router and a large conference room for meetings. With so many offices in the space, the team began to split up and work elsewhere. People were hired for the help desk, and they always worked in another room. I didn’t get to know them well. There were four of us in my office working together, including a highly paid contractor. Eventually, the contractor and the two others had left, and I was with a web designer who had been hired on.
I wasn’t alone in the office, but I wasn’t a fan of his WYSIWYG IDE (What You See Is What You Get – Integrated Development Environment), Macromedia Dreamweaver. WYSIWYG was very new at the time and prone to problems, and it generated a lot of heavy HTML that could be moved to a stylesheet to trim bloat and reduce file size. He had a pleasant personality, but I couldn’t get into the weeds of programming with him, and my questions on tricky web-development areas often turned to the internet for help instead.
Some of the names I still remember are Randy Springer and Sarah Nasseh. Gus Orologus was senior to my manager. I remember purchasing an old Macintosh for him on eBay because he once spoke of it with such fondness and had a plan to turn it into a fish tank.
Health
It’s tough for me to pinpoint when and where my health issues began with my heart. However, there is one moment I recall on the walk back from lunch with the team in Crystal City. My heart wouldn’t stop racing, and by the time we got back, I was lying on the floor, and paramedics came. I don’t recall it was still racing by the time they arrived; they’d left after taking vitals. I just remember that the floor was hard and uncomfortable to lie flat against on my back. The journey of my heart is a long path that merits its own story: SVT, ambulance trips, WPW, ablations, AV Block, trying to prove something is wrong, Sick Sinus Syndrome, Chronotropic Incompetence, and, eventually, a pacemaker. I’m including it here for a memory marker.
My Resignation
In short, this was my first job in the IT field. I didn’t know my strengths and values. I had no college degree and nothing to compare myself to other than my brother. I was happy just to get a job making HTML web pages. I was paid an annual salary of $25k and a full-time work schedule (about $12/hour). Moving from preparing meals at Ruby Tuesday’s to an air-conditioned desk job was a significant jump up, and I was able to start paying off my student loans from the Art Institute of Pittsburgh.
There was a combination of people leaving, as well as me taking on more responsibilities in different roles (ASP Programming, Database Architecture/Administration, Visual Basic Programming, Network Administration). I was very productive – too productive, and no one was being hired on to replace the people that had left.
I don’t believe we had internet access in our office, or it may have been over dial-up at the time. When we asked our manager about it, he said, “I’m not paying for a porn pipe.” This, in turn, meant that all research for work, downloading software, and trying things out were done at home, in addition to a 40-hour workweek and 2-hour daily bus commutes.
After conducting research at home, testing, and experimenting, I began publishing small scripts on the Planet Source Code website. A programmer from digitalNATION came across my posted code and reached out to invite me to apply for a role. It was closer to home, and the annual salary was $35K – a 40% increase (About $16.83/hour). I put in my two weeks. The project manager, senior to my manager, asked if there was anything they could do, and I simply answered no. I didn’t disclose the offer amount or the location relative to home, and he didn’t pursue retention beyond that question. About a decade later, when LinkedIn became popular, he provided a strong recommendation for me.

Lewis was a great member of the GMSI team, he had excellent technical skills and was able to work well with teams or on individual assignments.
Gus Orologas, February 11, 2008, Retired Security Consultant
Senior to Lewis, but didn’t manage Lewis directly.
The web was still in its infancy, with plenty of hype and venture capital, and the Dot-Com crash had yet to come. A “Microsoft shop” was all I knew, and the dominating browser among the government and businesses.




