 |
home
> aboutme
>> cv
translate to German (by SYSTRAN)
|
 |
 |
Christof Meerwald
Profile
Experienced developer specialising in server applications, backed by a master's degree in computer science. Versed in several programming languages (incl. C/C++, Python and Java) on Unix and Win32 platforms.
Work Experience
since 1/2008:
Emnico Technologies Ltd./Emnico Services Ltd.,
Swindon, UK:
Senior Software Engineer
12/2005 - 12/2007:
Alcatel-Lucent
(formerly Lucent Technologies),
Swindon, UK:
Senior Software Engineer
SBS Software Ges.m.b.H., Salzburg:
Software Engineer
full time:
11/2001 - 01/2003;
02/2004 - 11/2005
part time:
10/1996 - 6/2000;
10/2000 - 10/2001;
04/2003 - 01/2004
summer internships:
18/07/1994 - 26/08/1994;
10/07/1995 - 01/09/1995;
22/07/1996 - 30/09/1996
02/2003 - 01/2004:
Lebenshilfe Salzburg,
Werkstätte Hallein: community service (as an
alternative to Austria's compulsory military service), working with
people with mental or multiple handicaps.
03/07/2000 - 22/09/2000:
AT&T Laboratories Cambridge,
UK:
summer internship, omni project
(automated and improved the omniORB regression testing suite;
developed an omniidl and Python based black-box IDL testing tool)
09/1997 - 06/2000:
HTBLA Salzburg:
Linux system administrator (part time)
Emnico Technologies Ltd./Emnico Services Ltd.
- Support and continuous development of an optical network management (SONET/SDH) system in a Unix environment (mostly C++ on HP-UX and Linux).
key technologies used: CMISE
- Native Win32 application development.
key technologies used: C++, MFC/ATL, WTL, Win32
Alcatel-Lucent (formerly Lucent Technologies)
- Worked in a global development team on telecom network management software for optical networks (SONET/SDH) in a Unix environment (mostly C++ on HP-UX and Linux).
key technologies used: CMISE
- Low-level architectural work: porting of the low-level networking code from HP-UX to Linux; developed a debugging memory management library to facilitate detecting and tracking down of memory management bugs.
key technologies used: low-level networking API on Linux (packet sockets), accessing a program's call stack, reading ELF/SOM symbol table
- Implemented new features according to requirements, tracking down and fixing bugs and crashes. Used programming language and external protocols depending on subsystem.
key technologies used: C++, Java, SNMP, CMIP
- Developed a scriptable test-client in Java/JavaScript.
key technologies used: Java, Rhino, XML
SBS Software Ges.m.b.H.
- Developed several Java/JNI libraries to access Win32 specific APIs: i.a. CEN XFS, shared access to the same RS-232 port by multiple processes.
key technologies used: Java + JNI, C++, script-based automated code generation, multi-threading, Win32
- Worked on a J2EE application for monitoring self-service banking terminals: SNMP integration, database maintenance scripts.
key technologies used: Java + J2EE, WebSphere, SNMP, DB2 SQL
- Prototyped a custom firmware for the Linksys WRT54G to build a cost-efficient, custom security appliance (firewall and VPN).
key technologies used: Linux, gcc cross compiler, VPN
- Developed a replacement for the standard Windows shell (explorer) for self-service terminals that takes care of starting and monitoring application processes and prevents unauthorized access to the operating system desktop.
key technologies used: C++ using STL and Boost libraries; Win32 API for starting and monitoring processes; COM Automation for inter-process communication and JNI for the Java integration
- Linux server and network administration: set up a centralised directory service, firewall and VPN (IPsec, OpenVPN) configuration.
key technologies used: Linux, LDAP, Samba
- Developed a highly scalable TCP/IP communication server for statement printers.
key technologies used: C++ using STL and Boost libraries; multithreaded design using Windows NT's I/O completion ports for high scalability
Education
10/1996 - 10/2001:
University of Salzburg,
Department of Computer
Science:
5-year course in Applied Computer Sciences leading to a
Master's degree
("Dipl.-Ing.");
specialised in distributed systems and wrote master's thesis about
distributed simulation:
" CORBA-based Conservative Distributed Discrete
Event Simulation"
09/1991 - 06/1996:
HTBLA Salzburg
( secondary
technical school for electronics/informatics):
" Matura" (A-levels)
with distinction
Skills and Interests
- Programming in C, C++ (including STL and some Boost libraries), Java (incl. JNI), Python and PHP with the ability to quickly understand an already existing, complex code-base.
- Programming for Linux/POSIX platforms and Windows NT/Win32.
- CORBA programming using omniORB, omniORBpy, ORBacus and JabORB.
- Developed and currently running JabRSS, an RSS (RDF Site Summary) headline notification service for Jabber/XMPP.
- Contributor to the Open Watcom C++ compiler: major improvements to the C++ front-end (i.e. partial template specialization and partial ordering of class templates, template functions, namespace support and general C++ standard compliance).
- Extended the firmware of the Linksys WRT54G wireless router to support OpenVPN and OpenSWAN.
- Linux server administration (based on Debian GNU/Linux and Ubuntu): Apache, bind, PowerDNS, CVS, DHCP, exim, Dovecot (IMAP/POP3), Squid, PostgreSQL, inn, NewsCache, OpenLDAP, Samba, Dante/Socks, Subversion, Quagga, Bird, Netfilter/IPTables Firewall, ...
- Network planning and administration: Virtual Private Network configuration using OpenVPN and OpenSWAN (IPSec-based); excellent knowledge of IP and IP-based protocols, including TCP, DNS, HTTP, NNTP, RIP, SMTP, SNMP and IPv6.
- Open Source advocate familiar with many widely used Open Source licenses (and with a good understanding of the implications of using Open Source software in a commercial environment).
- Open Directory Editor for C++, CORBA, XPCOM and multi-threaded programming.
This CV is also available as PDF
and Microsoft Word/RTF:
cv-cmeerw.pdf, cv-cmeerw.doc.
|