Justin Edward Lewis – Curriculum Vitae

Overview

I am a software professional with many years' experience in the fields of scientific, military and remote control systems. My speciality is the design and development of satellite ground control systems but my wide-ranging experience of the system development process is generally applicable, particularly to projects with demanding performance or reliability requirements.

The success of the Inmarsat Storm Satellite Support System ('I4S', described below) illustrates my capability at object-oriented analysis and design: needing only low-cost and low-risk enhancements the I4S has evolved to work with European, American and Indian spacecraft with widely differing support requirements.

 

Technologies

TechnologyActiveinvolvement
Object-oriented design and programming16years
Use of Design Patterns14years
Distributed systems design and implementation15years
Real-time systems30+years
CORBA (BOA and POA)10years
RDBMS internals2years
 
C++16years
Multithreading13years
TCP, UDP, Sockets5years
Standard Template Library13years
ACE toolkit and frameworks6years
 
Java6months
Java Native Interface4years
JDBC (to Oracle)2months
 
Oracle SQL *PlusOccasionaluse over
14years
 
C#, ASP, .NET, SQL Server13months
 
Fortran (4, 77)18years
 
C2years
 
Unix (Solaris)18years
Windows
(and Unix/Linux/Windows cross-platform development)6years
MPX-3212years
VMS5years

 

Employment and Projects

2000 - presentCortex (South West) Ltd, an independent software consultancy

May 2000 to present (various work packages totalling 113 months)

Contracted to Inmarsat to enhance I4S (see below), allowing it to support more types of satellite. Responsible for migrating the telecommand subsystem from Orbix (CORBA 2.1, Basic Object Adaptor) to ACE/TAO (~CORBA 3, Portable Object Adaptor). Member of the launch support team for the Inmarsat-4 F1 and F2 satellites.

Co-authored a study on major modifications to the system to allow it to support packetised telemetry (for Alphasat) and then to use the same techniques for frame-rate processing of conventionally-formatted telemetry. Defined the requirements for translating various manufacturers' spacecraft databases into I4S format and coded, in Java, the Translator for Alphasat.

Built a framework for real-time encryption services, using open-source packages (the ACE toolkit and Crypto++). The initial application applies AES to satellite commands, but the framework has the flexibility to use a wide variety of algorithms and key lengths in many scenarios requiring rapid encryption or decryption.

 

September 2003 to December 2013 (various work packages totalling 46 months)

As subcontractor to Symban Ltd, I designed, and implemented in C++, major subsystems within RETINA, developed for the European Space Agency's Navigation Support Office. This checks in real time the availability and quality of data from global navigation satellite systems (initially only GPS, but now including Galileo and three other constellations). I used the ACE toolkit for platform independence – the system will run on Unix, Linux or Windows – and for its real time 'Reactor' framework to handle incoming station data (received via TCP or UDP). The system's architecture depends heavily on a TCP-based distributed filing mechanism which I designed and implemented. I was also responsible for the TCP-based inter-process communications for this distributed system.

 

September 2008 to February 2009

Working in a consortium, led by GMV of Madrid, to define requirements and study implementation options for a GNSS results storage, analysis and monitoring tool to be used by the European Space Agency's Navigation Support Office.

 

September 2007 to June 2008

Implemented www.coverdisczone.com, a three-tier Web application using distributed agents, coded in C# with .NET, to populate the database, via ASP and SQL Server.

 

1989 - 2000International Maritime Satellite Organization (Inmarsat),
 latterly the International Mobile Satellite Organisation,
 now Inmarsat Global Ltd

September 1997 - April 2000

Manager of Inmarsat's Satellite Operations Support Group, with responsibility for maintaining round-the-clock availability and reliability of the critical systems through which Inmarsat's satellites are monitored and controlled. Two successful launches during my first six months in this rôle completed the company's then fleet of nine spacecraft.

I drove the Y2K validation of the telemetry, tracking and control segment, a project on which validation of the company's other systems was modelled. Although a small number of bugs were detected and corrected during this process, all our systems behaved perfectly on the night.

Initiated, managed, and was technical lead on the architectural design for a 20-man-year programme to replace Inmarsat's legacy Satellite Support System with a distributed, object-oriented system in C++ and Java, on Sun Solaris and NT platforms, using Iona's Orbix CORBA implementation. I took it on myself to crack the major technical challenges such as multithreading and distributed memory management. The system is now the kernel of an international joint development ('I4S') between Inmarsat, L3 Communications – a leading US aerospace company – and Astrium (now part of Airbus Defence and Space) – the dominant European satellite manufacturer. I4S is currently being used by organisations worldwide to control some 25 satellites and to monitor a further 20 spacecraft.

 

February 1996 - July 1997

Managed a $1M project, implemented by a US Software House, to automate routine and contingency satellite-control procedures through Gensym's G2 real-time inference engine. Its successful completion saw Inmarsat becoming the first satellite operator to implement 'hands off' satellite commanding from an expert system.

 

January 1993 - May 1996

Developed the infrastructure and, with a contractor, the X/OpenLook gui for the flight dynamics system supporting the Inmarsat third generation ('I3') satellites' early orbit phases (from launcher separation to attainment of geosynchronous orbit). I was also the Quality Control authority for this critical system, written in FORTRAN and C and hosted on a small network of Sun workstations. I was a member of the Flight Dynamics team during all five I3 launches.

 

January 1993 - August 1997

Managed the 15-man-year internal project to upgrade Inmarsat's satellite control system to support the I3 spacecraft. Enhancements to this Encore-hosted Fortran system included uplink encryption, dwell telemetry processing and preparation of special commands for the on-board processor. The project also delivered two Sun-hosted peripheral systems written in C++ - an 'X.25 multiplexer' and an archiving system using an optical disk jukebox and tailored data compression.

 

November 1991 - December 1993

Managed a team of four contractors responsible for enhancing the satellite control system (then supporting Inmarsat's four second-generation spacecraft) and maintaining it in a state of ultra-high reliability.

 

April 1989 - October 1991

Worked on adapting the European Space Agency's Multi-Satellite Support System in time for the November 1990 launch of INMARSAT-2/F1, the first of the Organization's new generation of telecommunications satellites - Inmarsat acted as its own prime contractor for this very tightly scheduled and notably successful project.

 

1979 - 1989Logica Ltd,
 latterly Logica Space and Defence Systems Ltd

Worked on seven projects, of which I led four, most being on site at the European Space Operations Centre (ESOC) in West Germany. Highlights were:

 

Education

University of OxfordBA Honours in Geology with Crystallography,
 class II (upper)
University of DurhamResearch in Geophysics

 

Foreign Language Capability

Some French; fair German

 

CortexSW home Valid XHTML 1.0!