Tomáš Pospíšek - Curriculum Vitae

Persönliches

Ich bin diplomierter Informatiker (Uni Fribourg, Nebenfach Allgemeine Psychologie), 1969 geboren und habe mein Leben in Graubünden, Genf, Freiburg, Bern und auf Reisen auf dem Globus verbracht. Ich lebe mit Familie in Neuhausen.

Nach dem Studium habe ich als Selbständiger an diversen Softwareprojekten mitgearbeitet. 1995 habe ich den Internetprovider SPIN mitbegründet und in der Folge aufgebaut. Bei SPIN war ich für die Technik verantwortlich und habe ein kleines Technikerteam geführt.

Ende 1998 habe ich bei SPIN aufgehört und mich 1999 dem Reisen gewidmet.

Mitte 2000 gündeten Pirmin Kalberer und ich sourcepole, eine Firma welche Linux- und Open Source Engineering und Dienstleistungen anbietet. In Teams, selbständig oder im Verbund mit Dritten führen wir seitdem Kundenprojekte im Umfang eines Personenmonats bis zu mehrjährigen Mandaten mit Dutzenden von Beteiligten durch.

Seit 2002 halte ich Vorlesungen über Systemnahe Programmierung (Pthreads, Speicherverwaltung, Filesysteme), Datenkommunikation, Hochverfügbarkeit und Firewalls, Ruby und Ruby on Rails, an der Hochschule für Technik, Wirtschaft und Verwaltung Zürich und betreue Studentenarbeiten.

Zur Zeit bin ich verfügbar für Projekte.

Technologien, Sprachen und Systeme

  • Die folgenden Technologien, Sprachen und Systeme kommen in aktuellen Projekten zum Einsatz:
    JavaScript, Ruby, Ruby on Rails, Shell, SQL
    CSS, DOM, XML
    CVS, Firefox, Firebug, Git, Internet Explorer, Mongrel, Postgres, Subversion
    Debian- , Redhat-, Solaris- und AIX- Paket Management und Systemverwaltung, Linux, Ubuntu
  • mit diesen Technologien haben ich mindestens ein Jahr praktische Erfahrung:
    Ada, C, C++, Excel VBA, HTML, Java, Modula-2, Pascal, Perl, SQL
    Jira, KDE, Multithreading mit Pthreads, Qt
    HTTP/Apache, DNS/bind, GForge, IMAP, MySQL, SMTP/exim/sendmail
    RedHat, SuSE, Win3.11 (mit GUI), Win95 (mit GUI), Windows XP Embedded
  • die folgenden Technologien sind mir bekannt, wurden aber schon eine Weile nicht mehr eingesetzt:
    AppleScript, Fortran, Lisp, PHP, Prolog, Python, Scheme
    SOAP, XSD, XSL, WSDL, LDAP
    CruiseControl, Mapserver, OpenLDAP, Samba, Together, X11
    680x0 Assembler, Atari ST, Macintosh, Win2000, Win97, WinNT

Netzwerke

Von 1995 - 1999 hab ich (technisch, zu einem kleineren Teil auch organisatorisch) den Internetprovider SPIN aufgebaut. Dadurch habe ich Erfahrung in den folgenden Gebieten gewonnen:
  • Administration von heterogenen Netzwerken auf IP Basis (Unix, Mac, Windows), Routing LAN-WAN-dial-in, Sicherung des Netzes durch kryptographische Techniken, Firewalls.
  • Administration von Unix Systemen namentlich Linux.
  • Aufsetzen und Warten von Internetdiensten, darunter WWW, FTP, DNS, SSH, SMTP(mail), POP, IMAP, Dial-In.
  • Datenübermittlung über Wähl und Standleitungen: Analoge Datenübermitlung (Wählmodem, Standleitungsmodem), Digitale Datenübermittlung (ISDN, PRI).
  • Integration von Diensten und Systemen durch Scripts (Perl, Shell) und Bedienung über ein Web Interface.
Während dem Jahr 2009 war eine meiner Aufgaben bei T-Systems die Überprüfung und Korrektur der Netzwerk Architektur und effektiven Konnektivität eines sehr zeitkritischen Realtime Systems.

Durchgeführte Projekte

Diese Projekte wurden/werden während der professionellen Laufbahn durchgeführt (in chronologischer Reihenfolge):

Portierung eines Moduls für statistische Datenauswertung von Fortran nach C und Entwicklung eines Datenanalysemoduls in Excel VBA
Technologien: Win3.11, Fortran, C, VBA
Dauer: 4 Monate
Weiterentwicklung und Support einer Software für betriebsweite Arbeitszeitabrechnung und Kontrolle
Technologien: Win3.11, Win95, Borland-C++, Watcom-SQL, OWL (GUI), UML mit Rational Rose
Dauer: 6 Monate
Modul für Austausch von Daten zwischen verschiedenen Datenbanken der oben genannten Software für betriebsweite Arbeitszeitabrechnung und Kontrolle
Technologien: Win95, Borland-C++, Watcom-SQL, OWL (GUI)
Dauer: 2 Monate
Recherche, Analyse und Implementation eines Algorithmus zur Versions-Kontrolle und Management von Software ("Delta-Algorithmus")
Technologien: C
Dauer: 3 Monate
Aufbau und Betrieb eines Internet Services Providers
Technologien: Linux, beschränkter Support für Windows, Mac, Perl, C, Shell
Dauer: 3 Jahre
Individuelle Schulung im Bereich Netzwerk/Linux
Technologien: Linux, Perl, Config diverser Server
Dauer: 1 Tag
Schulung/Beratung im Bereich Firewall/Linux
Technologien: Linux
Dauer: 1 Tag
Implementaion der Sourcepole Website auf Cocoon Basis
Technologien: Linux, Cocoon, CSS, HTML, XML, XSL
Dauer: 2 Wochen
Beratung im Bereich GIS
Technologien: Solaris, ArcIMS
Dauer: 2 Wochen
Konzepterarbeitung für eine Datenbank-basierte Webaplikation mit in XML strukturiertem Daten-Import/Export
Technologien: Linux, Java, PHP, XML
Dauer: 1 Woche
GUI und DB Entwicklung
Technologien: Linux, Windows, Java, AWT
Dauer: 2 1/2 Wochen
Installation eines Embedded Linux System Prototypen
Technologien: Linux (Elinos), Shell
Dauer: 1 Woche
Aufbau und Support eines Webhosters
Technologien: Linux (Debian), Perl, Shell, diverse Netzwerk Dienste
Dauer: 3 Jahre
Perl Consulting/Support/Applikationsentwicklung
Technologien: Linux, Perl
Dauer: 1 Woche
Implementation, Einsatz und Support eines KMU Servers
Technologien: Linux (Debian), Perl, Shell, diverse Applikationen
Dauer: 3 years
GUI für GIS/DB Client
Technologien: Linux, Java, Swing, XML
Dauer: 1 Monat
Entwicklung und Support eines Video Servers
Technologien: Linux (Debian), RealServer, Perl, Shell
Dauer: 3 years
Projektmanagement bei der Entwicklung eines Backup System Web-Frontends
Technologien: Linux, AFBackup, Perl
Dauer: 2 Jahre
Managed Services für diverse KMUs
Technologien: AFBackup, Apache, Debian, Firewalls auf IPTables Basis, Linux, PHP, Samba
Dauer: 5 Jahre
Projektmanagement und Mitentwicklung einer auf CRUX basierten Linux Distribution
Technologien: Knoppix, Linux, Perl, Shell
Dauer: 2 Jahre
Technologieberatung für's Bundesarchiv im Bereich Implementation von Archivierunslösungen auf XML, XSD-Basis
Technologien: XML, XSD, Java
Dauer: 8 Monate
Entwicklung an einer GIS Web Applikation
Technologien: Mapserver, Ruby on Rails, Firebug
Dauer: 3 Wochen
Konzept, Implementierung und Wartung einer hochverfügbaren, Failover-Platform für eine Ruby on Rails Web Applikation
Technologien: Ruby on Rails, HA-Server, heartbeat, SSL Zertificat Management, DRBD, Linux
Dauer: 1 Monat, Wartung laufend
Konzept und Implementierung des SW Lebenszyklus eines Billet-Automaten für die SBB. System Tuning und Inter-System Kommunikation
Technologien: Ruby, XML, SOAP, WSDL, Java, CVS, Debian Package Management, Linux, grub, X11
Dauer: 3 Jahre
Embedded Appliance:
Verkleinern von Debian mit X11 und Qt auf unter 100M, Anpassen von Touchscreen Treiber an neue HW, Konfig von durchgehend grafischem Boot
Technologien: Debian, Qemu, VirtualBox, Qt, Xorg, C
Dauer: 3 Wochen
Konzept und Implementierung eines ausfallstolleranten Systems für die Authentifizierung und Verwaltung von Benutzern von Web Applikationen
Technologien: Debian, OpenLDAP, syncrepl, LAM, Apache
Dauer: 2 Wochen
Mandat bei T-Systems:
- Anzeige der Installationsstati von Servern
- Überprüfung und Korrektur der Architektur der unteren Schichten des realtime Dispositions-Systems RCS der SBB
- Scripting des Deployment-Prozesses und der Software-Verteiung
Technologien: Redhat, AIX, Solaris, ksh, bash, cvs, ssh, Zabbix, Netzwerk-Konfiguration, Tibco multicast
Management: Koordination zwischen Beteiligten, damit die Projekte vorankommen
Dauer: 1 Jahr
Mitentwicklung für Panter an Denteo (zur Zeit noch nicht veröffentlicht)
Technologien: JavaScript, dhtmlxScheduler, Firefox, CSS, Ruby on Rails
Dauer: 1 Monat à 200%


Mitarbeit bei Open Source Projekten:

Hauptentwickler des mailsync Werkzeugs
Technologien: C, C++, C-Client, IMAP, Unix
Dauer: 2 Jahre, wird nicht mehr weiterentwickelt
Debian Maintainer einiger Debian Software Pakete: mailsync, posixlock, screenie, udpcast
Technologien: C, Debian Paket Verwaltung, Linux, make, Shell
Dauer: laufend seit 2000
Debian Ex-Maintainer von: xxdiff
Technologien: C, Debian Paket Verwaltung, Linux, Make, Shell
Dauer: ca. 5 Jahre
Maintainer und Mitentwickler von karm
Technologien: C++, KDE, Linux, Qt
Dauer: 1.5 Jahre


Diese Projekte wurden während der Studienzeit durchgeführt:

Implementation eines Sortieralgorithmus und grafischer Testtools. GUI Gestaltung im Mac Stil
Technologien: Macintosh, Modula-2
Dauer: 1 Monat
Entwicklung eines Compilers für eine OO Sprache
Technologien: SunOS, Ada
Dauer: 1 Monat im Zweierteam
Konzeption und Implementation eines Neuronalen Netzwerks
Technologien: SunOS, C, C++
Dauer: 1.5 Monate
Portieren eines Compilers von Borland-Pascal/MS-DOS auf C/UNIX, Dokumentierung von existierenden Techniken zur Erstellung von Maschinenunabhängigen Programmen, wie z.B. Virtuellen Maschinen, Interpretierten Programmen etc., On-the-fly generation von Code etc.
Technologien: MS-DOS, SunOS, Pascal, C
Dauer: 3 Monate

Lehre

  • HSZ-T
    • Hauptstudium, Kernfach, ein-Semester-Vorlesung über Computer Netzwerke (IP, Routing, BGP) (zusammen mit Michael Steuert)
    • Hauptstudium, Kernfach, ein-Semester-Vorlesung über System Software (PThreads, Multithreading, Garbage Collection, Speicherverwaltung, Dateisysteme)
    • Ruby Seminar
    • Ruby on Rails Seminar
    • Linux Firewalls Seminar
  • Digicomp
    • Hin und wieder 3-tägiger Perl Kurs auf Französisch
  • Swisscom
    • Konsulting über SNMP Protokol and Werkzeuge
  • Softcom Technologies
    • 2 Monatiger Kurs Linux System Administration
    • 2 einmalige Seminare Linux und Ruby
    • Eintägiger Kurs Linux, Ruby und Ruby on Rails

"Fremd"sprachen

Deutsch, Englisch, Französisch, Italienisch und Tschechisch beherrsche ich fliessend mündlich und schriftlich, wobei meine tschechisch e Rechtschreibung unter Standard ist.