Persönliche Homepage:
Johannes Stille

Beruf

Porträt Johannes Stille
Über mich So lebe ich Sport Freizeit Interessantes & Links

Über mich
Zur Person
Bildung
Beruf
Bildergalerie

Beruf und Berufung

Seit 1997 bin ich berufstätig als Softwareentwickler.
In meinem Fall ist dieser Beruf wohl eine echte Berufung, und so bin ich auch schon lange vorher mit dem Programmieren in Berührung gekommen:

Zuhause

Begonnen hat es schon Anfang 1985, als mein Vater den ersten Computer (einen Apple IIc) ins Haus brachte. Mich reizte es, zu sehen, was man mit dem Gerät alles machen konnte, zunächst mit dem Homecomputer-typischen BASIC-Interpreter, bald auch mit Maschinencode.
Schon im Herbst desselben Jahres wurde das Gerät abgelöst durch einen PC-XT-Nachbau, und mit dem kam Turbo-Pascal - diese Sprache hat mich durch die nächsten fünf oder sechs Jahre begleitet, und ich habe die Sprachentwicklung von der strukturierten Programmierung über die modulare Programmierung (Units als Nachbau der Module in Modula 2) zur objektorientierten Programmierung mitgemacht.
Daneben bin ich auch immer wieder auf die Maschinenebene hinuntergestiegen, habe Assembler programmiert und mich mit der direkten Ansteuerung der Hardware befasst.

Student

Im Studium kam der Umstieg auf Unix, wo ich insbesondere die vielen nützlichen kleinen Kommandozeilentools kennenlernen konnte, und gleichzeitig der Wechsel der Programmiersprache zu C und C++. Während die Programmiersprache überwiegend nur eine andere Syntax darstellte für die gleiche Art des Programmierens, war der Schritt zu einem "großen", multitasking- und multiuser-tauglichen System ein deutlicher Fortschritt.
So habe ich auch die erste sich bietende Gelegenheit genutzt, zuhause auf ein vergleichbares System umzusteigen, und habe Minix installiert. Tanenbaums zugehöriges Buch und den Code habe ich auch durchgearbeitet - schon allein, weil ich zuerst einen Fehler im Festplattentreiber korrigieren mußte (und das System mit zwei Diskettenlaufwerken neu kompilieren), bevor es sich installieren ließ.

Entsprechend war ich auch hellauf begeistert, als ich im Sommer 1992 erstmals von Linux hörte und - im Gegensatz zu vorherigen Versuchen mit Minix/386 und 386BSD 0.0 - mir am 30. Juli 1992 die Installation tatsächlich gelang. Es handelte sich damals um Version 0.96b, und das System war bei weitem nicht so ausgereift, wie man es heute kennt.
Besonders deutlich wurde das im folgenden Jahr bei dem Versuch, die diversen Rechner unserer Familie zu vernetzen. Speziell in unserer Konfiguration - Routing zwischen verschiedenen Netzwerktechniken - hagelte es Systemabstürze, und ich begann, den verantwortlichen Code zu zerpflücken. Je tiefer ich einstieg, desto mehr Dinge fielen auf, die einer Überarbeitung bedurften. Für einige Monate wurde ich zum Kernel-Programmierer, ich habe eine komplette Tour durch den damaligen "Net2e"-Netzwerkcode absolviert und z.B. erstmals Classless Routing unter Linux realisiert.
Von meiner damaligen Arbeit dürfte heute kaum noch eine Codezeile übriggeblieben sein. Aber ich habe eine Menge gelernt, von dem ich auch heute noch profitiere - sowohl im Hinblick auf die Protokolle der IP-Familie als auch hinsichtlich der Zusammenarbeit und Organisation im Entwicklerteam.

Im gleichen Zeitraum und noch für ein paar weitere Jahre habe ich mich mit der Vernetzung im Großen befasst - es gab ein Internet vor dem Web, es gab EMail vor dem Internet, und es gab eine Zeit, als man noch nicht an jeder Ecke einen Internet-Zugang erwerben konnte.
Mit einem zu diesem Zweck gegründeten Verein versuchten wir, die weltweiten Datennetze dem normalen Bürger zugänglich zu machen. Auf der technischen Seite habe ich mich dazu unter anderem mit UUCP, mit dem Usenet, mit Mail-Verwaltung (auf Basis von smail) befasst, später - als das Internet langsam erreichbar wurde - auch mit SLIP und PPP, mit Routing und Firewalls, usw. bis zu einem Umfang, der für einen kleinen Provider ausgereicht hätte.

Auch wenn diese Aktivitäten teilweise ein wenig auf Kosten meines Studiums gingen, habe ich doch parallel an der Universität noch einiges getan.
Für eineinhalb Jahre habe ich auf einer Hilfskraftstelle in der Angewandten Mathematik ein Programm zur heuristischen Lösung bestimmter diskreter Optimierungsaufgaben mit entwickelt.
Interessanter war die Beschäftigung mit einem Parallelrechner auf Basis des damals gerade aktuellen "Transputer"-Prozessors mit der zugehörigen, für Parallelverarbeitung ausgelegten Programmiersprache OCCAM.
Und schließlich habe ich noch meine Diplomarbeit geschrieben, dabei den Mach-3.0-Mikrokernel kennengelernt und eine kleine Interpretersprache entwickelt, die speziell auf dieses System mit seinen Fähigkeiten zur Interprozeßkommunikation abgestimmt ist und ohne zwischengeschaltetes Betriebssystem auf dem nackten Mikrokernel laufen kann.

Die freie Wirtschaft

Ab dem 01.05.1997 war ich dann als angestellter Softwareentwickler für die Firma mdi in Ibbenbüren tätig. Dort mußte ich leider entgegen meinem Interesse auf die Microsoft-Schiene umschwenken und fortan in Visual C++ entwickeln. Ich war überwiegend eine Ein-Mann-Abteilung, auch wenn ich zeitweise noch einen Auszubildenden betreut habe.
In dieser Firma habe ich erst das Programmpaket WinADIS und später das Programm b.Link jeweils von meinem Vorgänger übernommen und eigenverantwortlich weiterentwickelt. Beide Programme verbinden die Verwaltung von Kunden- (bei WinADIS) bzw. beliebigen Unternehmendaten (bei b.Link) in einer SQL-Datenbank mit der teils automatisierten Erzeugung, der Verwaltung und Organisation von MS-Office-Dokumenten.

Seit dem 01.10.2002 arbeite ich für die Firma usd in Langen und ihre Kunden.
Hier arbeite ich überwiegend in kleinen Teams mit, was weitaus angenehmer ist als das frühere Einzelkämpfer-Dasein. Inhaltlich befasse ich mich einerseits mit Internet-Portalen und dabei weniger mit dem Design der Oberfläche als mit der dahinterliegenden Logik, auf der anderen Seite beschäftige ich mich mit Programmen und Werkzeugen zum Thema Sicherheit im Allgemeinen und Smart Cards im Besonderen. Das ist ein weites Feld von systemnaher Software über Java Card-Applets bis hin zu J2EE-Anwendungen. Auch bei dem Umgebungen bewege ich mich jetzt in einem breiteren Spektrum von VC++ über .NET und Java bis hin zum LAMP-System.


Home Kontakt Rechtliches & Impressum