I have a university degree in theoretical physics and am working as
freelance system programmer since 1990 now. During this time I was able to
acquire extensive experience regarding the autonomous implementation of
software projects in various industries.
The range of my activities reached for the programming of demons in C under UNIX, the programming of GUI applications in C++ under Windows, the development of mobile applications in Java or Javascript to the programming of firmware for microcontroller without operation system in C or assembler. The focus of my activities is the low level programming of customer-specific microcontroller boards as well as the close-to-hardware programming of PC in C/C++ under Windows, Unix or QNX.
I have considerable experience in the following fields:
- Firmware development for microcontroller systems
- Programming under real time operating systems
- Driver and application development under Windows
- Compiler- and Interpreter construction with Lex and Yacc
- Implementation of communication protocols for field busses like CAN / LIN etc.
- Development of other communication protocols for dedicated hardware
- Development of mobile applications (Apps) in Java or Javascript and HTML5 / CSS
- Generic and component-oriented programming for reusable software
As you can see from the other pages of this website I have special interest in development techniques leading to an optimized reusability of software - and I would be pleased to use these techniques to the advantage of our special project. One of my special strengths is the fast induction into new fields of duty and new subject areas. I'm always interested in new challenges. In the last ten years I was mainly active in the automotive area, but I'm interested to acquire experience in a different industry too. I'm married with three children.
If your interested in a detailed profile with numerous credentials as well as information regarding charge out rate and availability please contact me here. I would be pleased to support our project with my spirit and experience.
Education
| 1989 | General qualification for university entrance at the Marie-Curie-Gymnasium in Recklinghausen/Germany with a grade point average of 1,9 (B+) |
| 1990 | Start of studies of theoretical physics at technical university Dortmund |
| 1996 |
Completion of studies of theoretical physics with diploma degree grade 1,0 (A) Minor subject computer science with subject area computer networks and distributed systems |
Skills
| Programming languages | C/C++ (A), Assembler 80x86 / Z80 / C16x / 80x51 / ST7 / HC12 / PowerPC (A), Basic (B), Visual-Basic (B), Pascal (B), Delphi (D), Java (B), Prolog (C) |
| Scripting languages | Python (B), DOS Shell (B), Unix Shell (C), MAKE (A), AWK (B), Visual Basic for Applications (B), JavaScript (B) |
| Computer platforms | PC (A), microcontroller (A) |
| Operating systems | Windows Vista / XP / 2000 / NT (A), Windows 9x / 3.x (A), DOS (A), QNX (B), Linux (C), AIX (C) |
| Data bases | ODBC (D), c-tree (D) |
| Networks | Ethernet (C) |
| Field busses | CAN (A), LIN (A) |
| Communication protocols | CANopen (A), UDS(B), KWP2000 (A), CCP (B), TCP/IP (B), various proprietary wired and wireless communication protocols (A) |
| Terminals | VT100-Terminals (B), various proprietary data acquisition terminals (A) |
| RTOS | QNX (B) |
| Microcontroller families | C16x / XC2xxx (A) , PowerPC (A), TriCore (B), 80x51 (A), ST7 (A), TMS370 (B), HC12 (A), HC16 (B) |
| Peripherals | EEPROM (A), Flash (A), matrix keyboards (A), LCD displays (A), stepper motors (B) |
| Hardware interfaces | CAN-Bus (A), LIN-Bus (A), SPI (A), I2C-Bus (B), RS 232 (A), Centronics (D) |
| APIs | Windows API (A), MFC (B), POSIX (B), Sockets (B), COM/OLE (D) |
| Standards | ISO-C (A), POSIX.1 (A), POSIX.4 (B), pthreads (D), IEC-1131 (D) |
| Tools | dSpace Simulator / ControlDesk (B), Matlab / Simulink (C), MS Visual C/C++ 16/32 bit (A), MS MASM (B), Borland C/C++ 16/32 bit (B), Borland TASM (A), MS Visual Basic (B), Borland JBuilder (B), Keil C/Assembler for C16x / 80x51 (A), Hiware C/Assembler für ST7 (B), Tasking C/Assembler for C16x (A), Cosmic C/Assembler for HC12 (A), GNU C/C++ (B), Turbo Pascal (B), CodeWright (B), XMetaL (B), Continuuus (B), MS Office (B), MS Visio (B), Mathematica (B), TeX/LaTeX (B), lex/yacc (A), ST Emulatoren (A), HiTex Emulatoren (A), Lauterbach Debugger (A), Kleinknecht Gredi (A), ETAS Inca (B), ETAS Diagnostic Tool Set (B), Vector CANalyzer / CANoe (B), |
| Methods | object-oriented analysis / design / programming (A), structured analysis / design / programming (A), event-triggered programming (A), dialogue programming (A), ISO/OSI layer model / communication protocol implementation (A), compiler implementation (A), device driver programming (A), component-oriented analysis / design / programming (A), |
| Experience | programming of customer-specific hardware (A), implementation of communication protocols (A), design and Implementation of compilers and interpreters (A), design of operating systems (B), preparation of specifications (A), review of code and documentation (A), execution of tests (A), writing of documentation (A), migration and porting (A) |
| Industries | automotive (A), railways (A), communication (A), automation (B), warning systems (B), weighting systems (B) |
| Foreign languages | English (B) |
