Thomas Mellman
thomas@mellman.net

ZIELE:
Aufgaben in Softwaresystem Design und Entwicklung - mit besonderem Interesse in Mobil/Internet-Konvergenz und Embedded-, Echtzeit-, und Verteilte-Systeme.
AUSBILDUNG:
MS in Computer Science, Illinois Institute of Technology, Mai 1994.
BS in Information Systems, Southern Illinois University, Juni 1977.

AT&T Telephony Training, 1989.
AT&T Unix System V Release 4 Operating System Internals und C++ Kurse.
Windows/NT Programmierung.
DSET's DSG and CMIP Agent Toolkit Training.
CEI-Europe's Telecommunications Network Management training.
Siemens UMTS, GSM, and EWSD Training.


HARDWARE:
Target Systems Development Systems
Intel X86Linux, Windows
SunSunOs
VaxVMS
Motorola 680X0Unix, OS9
AlphaOSF1
MIPSSinix (SVR4)
Dazu noch einige Programmierungserfahrung mit einem breiten Spektrum von anderen Maschinen, von Mikrokontroller bis zu Supermainframes.
SPRACHEN:
Fremdsprachen Deutsch
Maschinen C (20+ Jahre), C++, Assembler, Perl, JNI, Java, SQL, Tcl/TK, make, usw.

ERFAHRUNG:
Nomor Research: 6/08 bis heute
Stelle: Software Developer
Für Nomor Researchs eNodeB Anwendung,
  • Als Unix- und ASN.1-Experte, meine Verantwortung ist das Design und die Implementierung von allem ausser L2:
    • RRC (L3), inklusive Einführung und Gebrauch des Open Source ASN.1 Compilers von Lev Walkin.
    • Die unabhängig-geschichtete und variable-multithreaded embedded Infrastruktur, an Pthreads basiert.
    • Der proprietäre, plattform-unabhängige IPC-Mechanismus, die "LTE Adressierung" (d.h. RNTI and Bearer ID) benutzt, um Marktflexibilität zu gewinnen.
    • Die Timing-Infrastruktur, inklusive Unterstützung für ein virtuelle PHY.
Erstes Design und Entwicklung vom Uplink-Scheduler für eine (andere) MAC Implementation.


OSB: 11/07 bis 6/08
Stelle: Software Developer
Entwickelte C/C++ Lösungen für CAN-Bus-basierte Embedded-Systeme: einen ECU/Klient für zwei Dienste (FileSystem und VirtualTerminal) und ein Flash-Speicher Programmierungswerkzeug. Andere Aufgaben:
  • Ein ISO 11783-bewusstes CAN-Bus Trace-Format-Werkzeug
  • Testskripts für das OSB VirtualTerminal-Produkt sowie den CAN-Bus Address-Claim-Mechanismus.
  • Entwickelte neue VirtualTerminal Leistungsmerkmale.
  • Analyse der Steuerungs-Software für den Leguan Brückleger-Panzer von Krauss-Maffei Wegmann.


Creative Telcom Solutions: 5/06 bis 11/07
Stelle:
CTS war meine eingetragene Firma, die ich gegründet habe um Mediation-Systeme und Unterstützung anzubieten. Sie hat zwei Kunden in Südostasien gehabt. Schnittstellen-Module für die folgenden Netzwerk-Elemente sind bei CTS entwickelt und verkauft worden:
  • Siemens MSC
  • Siemens SGSN
  • Nokia MSC
Diese Module sind in Java, JNI, und C geschrieben.

CTS entwickelte ein Provisioning-Mediation-Produkt, für das ein verbindlicher Kaufvertrag besteht. Die pMD unterstützt die folgenden Netzwerk-Elemente:

  • Siemens HLR/AuC (Q3)
  • Alcatel HLR/AuC (X.29)
  • Huawei HLR/AuC
  • Ericsson HLR/AuC

Fazit:
Der Verzug des Kaufvertrages hat ein dringliches Cash-Flow-Problem verursacht.


Tecways AG (ehemalige CCS): 1/04 bis 5/06 (München)
Stelle: Entwickler und Projekt-Manager
Entwickelte mehrere neue HLR Adaptoren, einschliesslich für
  • Das Siemens Direct Q3 Teilnehmer Verwaltungs Leistungsmerkmal, mit CMIP-über-TCP/IP und einen neues MIB.
  • Ericsson
  • Huawei
  • Nokia

Übernahm die Projekt Management Verantwortung für unsere installierte Provisioning-Solution.

Rettete eine schiefgelaufene Erweiterung zu dem X.29 Teilnehmer-Verwaltungsprodukt, das ich bei meiner ersten Phase bei CCS geschrieben und in Betrieb genommen habe.

Fazit:
Tecways AG wurde an einen indischen Investor verkauft. Dieser hat den Betrieb in Deutschland eingestellt.


Siemens AG: 5/01 zu 10/03 (München)
Stelle: Entwickler (AT)
Für das UMTS-Projekt "Separation of Control and Transport": leistete die Voranalyse vom H.248 Protokol als Basis für Media Gateway Control Funktionen. Mitglied des Call Failure Diagnostics Teams. Owner von der Cross Office Check and Glare recovery Modul.

Fazit:
Die herausfordernde UMTS-Entwicklung ist nach Athen umgezogen.


Chipcard & Communication Systems: 9/97 bis 5/01 (München, Deutschland)
Stelle: Telecommunication Network Management Consultant
Entwurf und Entwicklung einer CMIP-Schnittstelle (Q3) zu GSM Network Elements. Diese Schnittstelle (Inverted Q-Adapter (IQA) genannt) benutzt die (OSI) Session Services von Digital's OSAK API und schliesst ROSE-, CMIP-, und System Management-Schichten ein. IQA beinhaltet auch kunden-spezifische Module für Billing Record Retrieval und für die Ausführung von Siemens Subscriber Administration MML-Kommandos an Operation and Maintenance Systems. Letzteres Modul besitzt auch einen SR10 MML Erkenner. IQA lauft bei mehreren Kundenstellen in drei verschiedenen Varianten, alle auf dem gleichen Kern basierend.

Entwickelte einen X.29/X.25 HLR-Adaptor für ein C++ Mediation-Platform. Übernahm dann die Entwicklung und Projekt-Management des ganzen Provisioningprodukts und bin nach enger Zusammenarbeit mit dem arabischen Kunden zu einem erfolgreichen Schluss gekommen.

Andere Projekte:

  • Entwickelte auch einen Dateiübersetzer mit dem Gebrauch eines Inhaus-BER (ASN.1) Enkoder/Dekoder
  • Entwickelte ein TCP/IP Client/Server Anwendung für die Übersetzung von Teilnehmerverwaltung-Transitionen zu MML-Kommandos.
  • Entwickelte ein ASN.1 Übersetzer für einen C++ Provisioningplatform und wartete auf eine Generic-CDR Klasse für ein Data-Warehouse Projekt.

Fazit:
Ich habe CCS verlassen da ich mir Sorgen um die anhaltende Gewinnlosigkeit der Firme machte.
Bin bei Siemens eingestiegen, um am Anfang von UMTS dabei zu sein.


AEG Mobile Communications: 5/96 bis 8/97 (Ulm, Deutschland)
Stelle: GSM Consultant
Detailiertes Design von GSM Layer 3 Supplementary Services mit Gebrauch vom SDT-Case-Werkzeug. Schrieb einen ASN.1-Kompiler mit Yacc/Lex welcher Tabellen fürs TCAP-Information-Element encoder/decoder generiert (SS7). Mitglied des Mobile-Network-Layer/Call-Teams (Call-Handler zwischen Layer-3 und Man-Machine-Interface). Schrieb einen C-Kompiler welcher legacy Include-Dateien zu SDL Sorts umwandelt.

Fazit:
AEG Mobile Communications hat alle ihre Consultants abgeworfen und ist kurz darauf verschwunden.


Motorola CableComm: 7/95 bis 5/96 (Arlington Heights, IL)
Stelle: CMIP Consultant
Mitglied der Agentmannschaft. Diese entwickelte den CMIP Netzwerkverwaltungsagenten für Cablemodems. Dieses Projekt benützt Atria's ClearCase CASE Werkzeug, das Vertex Echtzeitbetriebsystem, und DSET's Distributed Systems Generator Agent Toolkit. Mit Gebrauch eines Parsers, das ich bei Motorola WDG entwickelt habe (nächster Eintrag), entwickelte ich mehrere GDMO-Erkennungswerkzeuge.

Fazit:
Projekt abgeschlossen. Meine Frau wollte zurück nach Europa.


Siemens Nixdorf: 10/95 bis 1/96 (Rosemont, IL)
Stelle: Driver Consultant
Portierte für eine Mips Platform einen UNIX Device Treiber, den ich früher bei SNI geschrieben habe. Dieses Projekt wurde gleichzeitig mit der Motorola Cablecomm Stelle (nächster Eintrag) gemacht.


Motorola Wireless Data Group: 8/94 bis 7/95 (Bothell, WA)
Stelle: OSI Consultant
Portierte ein 7-Ebene OSI-Stack für ein eingebautes 68040-System (eine CDPD Cellular Mobile Data Base Station). Das MDBS ist auf das Echtzeitbetriebsystem pSOS+ basiert. Unterstützte einen SNMP-Agenten für diese Basestation. Initierte, mit dem Gebrauch von DSET's Distributed Systems Generator Agent Toolkit, die Entwicklung eines CMIP-Agenten. Initierte die Entwicklung eines CMIP-Testmanagers. Dieser benutzt ein yacc/lex GDMO-Parser.

Fazit:
Projekt abgeschlossen. CDPD (und vor allem die OSI-Teile) in Gefahr. Sind zu unserem Haus in Chicago zurückgekehrt.


Siemens Nixdorf Info. Systems: 1/91 bis 8/94 (Rosemont, IL)
Stelle: Senior Developer
War verantwortlich für die UNIX Device Treiber Unterstützung (SCO und SVR4). Entwickelte ein besonderes HDLC Secondär-Device welches mehrere Knoten unterstützt. Dieser Treiber ist aus drei unabhängigen Schichten gebaut: MAC (Zilog SCC), Link, und Streams. Diese Lösung hatte Zustandmaschinen für den Medien/Chip Zugriff (Zilog SCC) und den Linkschichten miteingeschlossen. Eine dritte Schichte wurde für den Streamszugriff benutzt.

Portierte Sendmail für einen 68000 Mailserver in einer heterogenen Umwelt mit SVR4 und den SNI eigenen "NERV" intercontinentalen Emailsystem. Initiierte Untersuchungen ob sich das Windows/NT für SNI Handelssysteme eignet. Portierte eine client/server Anwendung von einer SCO Platform zu Solaris. Entwickelte 2 client/server Anwendungen die auf Ethernet auf Unix IPC basiert sind.

Entwickelte ein interactives System-Konfigurationswerkzeug um eine komplizierte multi-tasking, multiprozessor Unix Anwendung auf eine leere Maschine aufzubauen. Diese Einrichtung benutzt die ganze Suite der UNIX-Werkzeuge.

Entwickelte eine Kommunikationsschichte - auf SUN RPC basiert - welche transparente interhost Kommunikationen für eine heterogene Umwelt zur Verfügung stellt.

Fazit:
(Alle) Projekte abgeschlossen. Dampf aus der SNI-Entwicklung läuft aus. Nahm eine aufregende Gelegenheit im Pazifisches Nordwesten wahr.


R.R. Donnelley Corp.: 10/90 bis 1/91 (Lisle, IL)
Stelle: Consultant
Entwickelte zwei X-Window/Open-Look Anwendungen für die Druckindustrie.

Fazit:
Projekt abgeschlossen. Habe endlich das Gerätetreiberprojekt bei SNI an Land gezogen.


Motorola Cellular: 5/90 bis 10/90 (Arlington Heights, IL)
Stelle: Consultant
Portierte die X.25 Schichte 3 für eine Groupe Speciale Mobile (GSM) zellulär Base-Station Plattform, einschliesslich der Entwicklung des kommunikations-gegründeten Echtzeit Protocol Prozesses und Internet-gegründeten Einheitstesteinrichtung.


AT&T Bell Labs: 4/86 bis 5/90 (Naperville, IL)
Stelle: Consultant
Leistete, als Mitglied der Local Area Selective Services Entwicklungsmannschaft, allgemeines Fehlerlösen von ISDN und POTS Call Processing für die 5e6 "generic" der 5ESS Telephon Zentralrechner. Entwickelte auch ein Verfahrensverwaltungswerkzeug in ksh für das Projekt. Entwickelte das Kommunikationsmodul für ein OSI packet-switched WAN/LAN Emulator zur Unterstützung der Entwicklung der Network Directory Server. Portierte das OSI Protocol Stack für AT&T 3b2 Rechner, einschliesslich der Schichte 2 bis 5, sowohl wie die ROSE, ACSE, and ASN.1 Encoding Einheiten.

Unterstützte Graphics Werkzeuge für das AT&T 68000-basierte 630 MTG Terminal (Multitasking Graphics), einschliesslich der Setzmaschine Simulator. Spielte eine Schlüsselrolle in der Gründung des 630 Application Toolchest Mechanismusses für die Entwicklung und elektronische Verteilung von graphicsorientierten Anwendungen.

Fazit:
AT&T hat alle ihre Consultants abgeworfen.


Streeter Richardson: 10/85 bis 3/86 (Grayslake, IL)
Stelle: Contract System Designer
Entwickelte, mit dem OS9 Betriebsystem, eine multitasking Anwendung und Systemsoftware, um fahrende Eisenbahnwagone zu wiegen. War auch verantwortlich für den Systemdesign, die Durchführung des Grossteils des Anwendungsprogrammes, Devicetreiber Schöpfung, und Betriebsystemportierung.

Fazit:
Entwicklung abgeschlossen. Hardware verschoben. Bell Labs Gelegenheit ist aufgetaucht.


Dialogic Systems: 9/83 bis 9/85 (Sunnyvale, CA)
Stelle: Design Engineer
Verantwortlicher Entwickler für den TRansfer Agent Einheit Dialogic's "midframe" Satellit Rechner. TRA leistete alle systemebenen Kommunikationsfunktionen mit IBM hosts für die 68000-basierte (verteilte) Simulation der MVS/TSO Programmierungsumwelt. War auch verantwortlich für die Unterstützung der Filesystem Utilities auf dem unix-ähnlichen Dialogic Operating System.

Fazit:
Dialogic Systems (von Sunnyvale) war im Sturzflug und ist kurz darauf verschwunden. Enttäuscht von Kalifornien, entschieden wir zurück in meine Heimat zu kehren, wo wir ein Haus kaufen konnten.


Leica: 8/80 bis 7/83 (Heerbrugg, Schweiz)
Stelle: Microcomputer Programmer
Entwickelte die Software für einen handtragbaren Data-sammlungsrechner welcher ein Blasespeicher Filesystem, Basic Interpreter, Software Serial Data Link, Landvermessungs-Anwender-Software (einschliesslich eines Blasespeicher Editors), und ein NSC800 ZP (Z80 instruction set) integrierte.

Fazit:
Projekt abgeschlossen. Konnte endlich von meinem ersten Auslandseinsatz nach Hause in die Vereinigten Staaten zurückkehren. Ziel: ins UNIX einzusteigen.


Qume Corporation: 6/79 bis 7/80 (San Jose, CA)
Stelle: Microcomputer Programmer
Design und Entwicklung der Kontroller/Kommunikationskarte eines Daisy Wheel Drucker-basierten Produktes, welches die 8085 ZP benutzt.

Fazit:
Projekt abgeschlossen. Freunde aus Europa haben eine Auslandsgelegenheit vermittelt.


Itel Corporation: 6/78 bis 6/79 (Palo Alto, CA)
Stelle: Junior Engineer - Firmware
Software-Unterstützung für die Mikrocode Mannschaft. VM Systemsprogrammierung und Unterstützung. Verantwortlich für die Fertigstellung/ Unterstützung/Modifizierung von zwei Mikrocode-Assemblers.

Fazit:
Itel ist auf legale und finanzelle Probleme gestoßen. Es hat sich kurz darauf aus dem Computergeschäft gezogen.


Packaging Corp. of America: 12/77 bis 6/78 (Evanston, IL)
Stelle: Technical Support Specialist, Systems
Unterstützung des Datanet-Kommunikationsnetzwerkes, einschliesslich lokaler und ferner Anlagenprogrammierung, und Untersuchungen mit den Netzsystemdienstleute (Honeywell, DEC, AT&T).

Fazit:
Ich habe entdeckt, daß ich doch eine Stelle in der technischen Entwicklung bekommen kann, wenn ich nach Kalifornien umziehe.