 |
home
> aboutme
>> cv
translate to German (by SYSTRAN)
|
 |
 |
Christof Meerwald
Profile
Experienced developer specialising in C++ static code analysis, backed by a Master's degree in Computer Science. Versed in several programming languages (C/C++, Java and Python) on Unix and Win32 platforms. Able to come up with elegant solutions to tricky problems by thinking outside the box.
Work Experience
Programming Research Ltd.| Senior Software Engineer | since 3/2010 |
- Static code analysis for C++
Emnico Technologies Ltd./Emnico Services Ltd.| Senior Software Engineer | 1/2008 -- 2/2010 |
- Network management application development -- concentrating on SMI parser, SNMP/MIB and native code integration for low-level network and OS access. Designed and implemented a versatile framework to access MIB data by auto-generating data-access functions from MIB module definitions.
key technologies used: Java + JNI, XML + XSLT, Apache Derby, SNMP, MIB/SMI, low-level network access
- Developed an asynchronous TCP/IP communication server.
key technologies used: C++, Boost
- Support and continuous development of an optical network management (SONET/SDH) system in a Unix environment (C++ on HP-UX and Linux).
key technologies used: C++, CMISE, OSI
- Linux embedded software development.
key technologies used: C/C++, SNMP, Linux, Python-based code generation
- Native Win32 application development.
key technologies used: C++, MFC/ATL, WTL, Win32
Alcatel-Lucent (formerly Lucent Technologies)| Senior Software Engineer | 12/2005 -- 12/2007 |
- 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, OSI
- 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
- Developed a scriptable test-client in Java/JavaScript to automate testing of an XML message based interface.
key technologies used: Java, Rhino, XML
SBS Software Ges.m.b.H.
| Software Engineer |
| full time: |
11/2001 - 1/2003;
2/2004 - 11/2005 |
| part time: |
10/1996 - 6/2000;
10/2000 - 10/2001;
4/2003 - 1/2004 |
| summer internships: |
7/1994 - 8/1994;
7/1995 - 8/1995;
7/1996 - 9/1996 |
- 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
Lebenshilfe Salzburg, Werkstätte Hallein| Community Service | 2/2003 -- 1/2004 |
- As an alternative to Austria's compulsory military service: working with people with mental or multiple handicaps.
AT&T Laboratories Cambridge| Summer Internship | 7/2000 -- 9/2000 |
- Automated and improved the omniORB regression testing suite; developed a black-box CORBA server testing tool in Python, based on annotations in the interface definition (IDL).
HTBLA Salzburg| Linux System Administrator | part time: 9/1997 -- 6/2000 |
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"
9/1991 - 6/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 (incl. Django) and PHP with the ability to quickly understand an already existing, complex code-base.
- Development for Linux/POSIX platforms and Win32.
- Strong understanding of multithreaded development (i.e. concurrency, race-conditions, contention, thread-local storage)
- Developed and currently running JabRSS, an RSS (RDF Site Summary) headline notification service for Jabber/XMPP.
- Developed a lightweight SIP forwarding server (stateless SIP proxy) as well as a lightweight exim greylisting server using a SQLite backend.
- 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).
- Contributed Linux-specific epoll connection handling code to the Open Source jabberd2 XMPP server to improve scalability for high number of concurrent connections.
- 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, UDP, DNS, HTTP, NNTP, SMTP, SNMP, SIP, XMPP and IPv6.
- Open Source advocate familiar with many widely used Open Source licences (and with a good understanding of the implications of using Open Source software in a commercial environment).
This CV is also available as PDF
and Microsoft Word/RTF:
cv-cmeerw.pdf, cv-cmeerw.doc.
|