Michel Stam
Titel |
ing. |
Geboortedatum |
31-08-1976 |
Nationaliteit |
Nederlandse |
Burgelijke staat |
Gehuwd |
Wie ben ik
Ik ben een Embedded Software Development Architect / Lead met meer dan 20 jaar aan ervaring in een verscheidenheid aan programmeertalen, vanaf Assembly en C tot TCL en PHP.
Ik heb een goede kennis van netwerken en heb mijn vaardigheden ontwikkeld door voor bedrijven in diverse sectoren wereldwijd te werken, met als doel hun producten te
voorzien van innovatieve software, varierend van drivers tot complete server oplossing. Ik heb een passie voor design, connectivity en Linux.
opleidingen & trainingen
- 2023, Conflicthantering, ICM, Utrecht
- 2022, Influencing Skills, Schouten & Nelissen, Zaltbommel
- 2021, Leidinggeven zonder macht, Schouten & Nelissen, Zaltbommel
- 2014, Agile training (Allan Kelly)
- 2002, SAIR Linux GNU Certification 3XO-101
- 1998, PhoenixBIOS Release 6.0 Developers' Course, Irvine CA (USA)
- 1994 - 1998, Hogeschool van Utrecht, Utrecht;
- Electrotechniek/Telematica, electrotechniek breed
- 1988 - 1994, Dr. F.H. De Bruijne Lyceum (Utrecht Highschool), HAVO level;
- Engels
- Handelswetenschappen en recht
- Natuurkunde
- Nederlands
- Scheikunde
- Wiskunde B
kennisgebieden
- Ontwerpen, aanpassen, ontwikkelen en optimaliseren van software
- Databases (ontwikkeling en beheer)
- Embedded (Linux)
- Hardware (Intel x86)
- Netwerken (ontwerp, ontwikkeling en beheer)
- Object-georienteerd ontwikkelen
- Security
- Systeembeheer
vaardigheden
- Besturingssystemen
- Cisco IOS (12.x - 16.12)
- Debian (vanaf 4.0)
- Lucent ComOS
- RedHat, Fedora Core
- Slackware (vanaf 3.x)
- Windows '95/'98/ME/2000/XP/7/10
- Ontwikkeltools
- Autoconf/Automake
- CVS
- GCC/GDB
- Linux software
- Apache (1.3.x en verder)
- Asterisk
- AuthSAE
- BIND (8.x en verder)
- Dovecot + Sieve
- Free-RADIUS
- GNU/Bayonne 1.2.x
- GNU GK (OpenH323)
- HostAPd/wpa_supplicant
- Kernel (2.0 en verder)
- Linux-HA (Heartbeat)
- LLDPd
- Net-SNMP
- NFS
- NIS
- NTP 4.x
- OpenLDAP
- OpenSSH
- OpenSSL
- UW-IMAP (Pine)
- MySQL (3.23.x en verder)
- pthread
- Samba
- Sendmail
- SQLite
- Sun RPC
- System V IPC
- Unix sockets
- Programmeertalen
- Assembly (Intel x86)
- Bash
- C
- C++-98 (OO & STL)
- HTML/CSS
- JavaScript
- Pascal
- Perl
- Protocollen
- IMAP4
- IPSEC/ISAKMP/IKEv2
- IPv4, IPv6 (TCP, UDP, ICMP, IGMP)
- NTP
- OSPF
- Talen
interesses
- Duiken
- Fotografie
- Lezen
- Linux
- Muziek
- Programmeren
- Routers
- Security/VPN
werkervaring
Senior Embedded Software Developer bij RIPE NCC R&D, Amsterdam
2022 - heden
- Het ontwikkelen van een toekomstvisie voor het Atlas platform
- Het oplossen van problemen met hardware probes in het Atlas platform
- Het ondersteunen van gebruikers van het Atlas platform
- Het begeleiden van een software engineer
Infrastructure Architect bij Fugro Services B.V. (Global IT), Leidschendam
2021 - 2022
- Het vastleggen van een standaard ontwerp voor kantoorinfrastructuur
- Het begeleiden van het team in het ontwerpproces en het documenteren van beslissingen
- Het inbrengen van expertise op het gebied van netwerken en netwerk-technologieen
- Het geven van presentaties aan IT, business en R&D om ontwerpen en andere technische onderwerpen uit te leggen
- Het verzorgen van een referentieimplementatie van switching/routing technologieen
- Het begeleiden van network engineers
Technical Architect bij Fugro ICT B.V. (IT on Vessels), Leidschendam
2017 - 2021
- Het identificeren, ontwerpen en oplossen van infrastructuur gerelateerde problemen met R&D en operations
- Het leiden van het design process en het documenteren van de beslissingen
- Het bewaken van het design en het zorgen dat het design nageleefd wordt
- Het inbrengen van expertise op het gebied van netwerken en netwerk-technologieen
- Het geven van presentaties aan de business en R&D om het design uit te leggen
- Het verzorgen van een referentieimplementatie van switching/routing technologieen
- Het begeleiden van stagiaires en netwerk engineers
Senior Embedded Firmware Engineer/Linux bij Fugro Intersite B.V., Leidschendam
2013 - 2017
- Het onderhouden van op OpenWRT/Linux-gebaseerde x86 en ARM embedded besturingssysteem
- Het debug-en van low-level problemen in the Linux kernel (disk, WiFi, TTY en netwerk stack)
- Het oplossen van bugs in de ontwikkel branch van OpenWRT om deze productie-gereed te maken
- Het implementeren van IEEE 802.11s met SAE in OpenWRT
- Het implementeren van discovery middels LLDP
- Het ontwerpen van een multicast routed netwerk over een draadloos mesh netwerk
- Het zorgen voor het upstream sturen van patches op open source projecten
- Het ontwerpen en ontwikkelen van drivers voor een FPGA implementatie in Verilog (RTC, clocksource, TTY, POSIX clock, LED, SPI, interrupt controller)
- Het ontwikkelen van een board support package voor een binnen Fugro ontwikkeld AT91 SAM9 bord (aanpassen van at91bootstrap en OpenWRT), alsmede het up-to-date brengen van een bestaand board support package op basis van een PXA255 processor
- Het evalueren van nieuwe borden gemaakt door derde partijen op geschiktheid voor gebruik in producten
- Het begeleiden/uitvoeren van lange-afstands WiFi testen
- Het onderzoeken van signaal sterkte in relatie tot afstand voor WiFi netwerken, alsmede het schrijven van een link budget calculator op basis van de bevindingen
- Het implementeren van een Layer 2 bridge over IPSEC
- Het maken van diverse aanpassingen in Verilog FPGA code alsmede het ontwikkelen basis componenten, bijvoorbeeld een LED en een SPI controller
- Het ontwerpen en ontwikkelen van een IDE controller component in de PSoC Creator
- Het deelnemen aan AGILE development (SCRUM)
Senior Embedded Software Engineer bij Lely Industries N.V., Rotterdam/Maassluis
2013
- Het onderhouden en uitbreiden van een embedded besturingssysteem op basis van Linux
- Het implementeren van een systeem voor logging van sensor data over een Ethernet netwerk
- Het compileren van een bare-metal ARM GCC toolchain ten behoeve van de Cortex-M3 processor
- Het maken van RF analyses voor Bluetooth/WiFi protocollen
- Het beheren van de kantoor infrastructuur (netwerk)
- Het beheren van een rekencluster
Senior Software Engineer bij HaloteC Instruments B.V., Veenendaal
2010 - 2013
- Het implementeren van een GPIO driver en een Watchdog driver voor de ITE8718F chip in combinatie met de Linux kernel
- Het implementeren van een LED driver in de Linux kernel voor het aansturen van een zelfontworpen hardware print
- Het ontwerpen en implementeren van een mediaspeler tbv het afspelen van digitaal gedistribueerde content
- Het ontwerpen en implementeren van een SCADA systeem voor procesbewaking en logging van biologische experimenten
- Het ontwerpen en implementeren van een rekencluster op basis van TFTP/NFS/DHCP en PXE, in combinatie met SLURM en MPICH2
- Het aansturen van stagiaires/software engineers
- Het ontwerpen en implementeren van een embedded besturingssysteem op basis van Linux
- Het compileren van de GCC/Linux/uClibc toolchain
- Het compileren van alle support libraries voor een basis OS
- Het schrijven van diverse utilities/programmatuur tbv de webinterface en het booten van het systeem
- Het schrijven van utilities voor het opslaan van configuratie informatie in een SQLite database, alsmede het ontwikkelen van custom SQLite commandos om de configuratie te valideren
- Het ontwikkelen modules voor het opslaan van factory informatie buiten het filesysteem
- Het opstellen en bewaken van de coding style
- Het installeren en beheren van de kantoor infrastructuur (netwerk en telefonie), cq het aansturen van contractors
Senior Programmer bij Octo Wireless LLC, Almere
2009 - 2010
- Het implementeren van WiFi kanaalbreedtes in de MadWiFi Linux driver in de taal C
- Het implementeren van de frontend/backend in C, RADIUS, MySQL en PHP voor een WiMAX ASN Gateway
- Het implementeren van een CDMA module op een embedded MIPS platform
- Het schrijven van bugfixes voor een embedded MIPS platform
- Installatie, configuratie en beheer van de kantoor infrastructuur (servers en netwerk)
Senior Programmer bij Hopling Technologies B.V. (t/m 09-2008) en Hopling Networks B.V., Almere
2006 - 2009
- Het ontwikkelen van software in de taal C voor Embedded Linux besturingssystemen (x86, MIPS en ARM)
- HDP (Layer 2 Hopling Discovery Protocol) specificeren, implementeren, het verzorgen van de documentatie voor en het begeleiden van een patentaanvraag (#EP2028794, #EP2028795)
- Het begeleiden van een FCC/IC RF certificatie
- Linux Wireless extensies en andere ioctls toevoegen aan de Prism WWR en Prism2 driver in de Linux 2.6 kernel
- Aanpassingen en uitbreidingen aan de Ecos/Redboot boot loader tbv productie en support
- Aanpassen van een driver voor de Linux kernel tbv L2TP in combinatie PPP om een Layer 2 tunnel op te zetten tussen een Linux LAC en een Linux of Cisco LNS
- Het maken van aanpassingen aan een centraal repository voor configuratieparameters op embedded systemen (communicatie over het netwerk, binaire storage om ruimte te besparen)
- L2TP Interoperability tussen Cisco routers en Linux op layer 2
- Het schrijven van software voor een centraal configuratiemanagement systeem voor embedded applicaties
- Automatische meshnetwerk configuratie applicatie specificeren
- LDAP connectivity verzorgen richting Samba/FreeRADIUS/Sendmail/Dovecot
- Fax-to-email gateway configureren waarbij de interconnectie via IAX2 geschiedt naar een Asterisk PBX
- Installatie, configuratie en beheer van de kantoor infrastructuur (servers, telefonie en netwerk)
Software Engineer bij T-logics, Maarssen/Amsterdam/Laren, waarvan 1.5 jaar via detacheringsbureau Dicom Gorcum B.V. (04-2002 - 10-2003)
2000 - 2006
- Het ontwikkelen van software in de talen C/C++ op SCO Unix/Linux besturingssystemen
- Call4XS (micro-internet billing systeem)
- Diverse patches voor GNU/Bayonne (Nederlandse text-to speech taalmodule, multi-threaded re-write van de SunRPC module, SNMP subagent)
- IVR applicaties, waaronder een applicatie om soundfiles op te nemen en te editen, enkel gebruik makend van de telefoon
- Backend voor een statistieken systeem (multi-platform) voor het afleveren van calls over netwerken
- Gedistribueerd alarmsysteem op basis van C++
- Het schrijven van scripts (Unix shell-scripts) voor het realiseren van diverse taken waaronder backup, beveiliging en ter ondersteuning van softwareontwikkeling
- Het installeren, configureren en beheren van Linux webservers, fileservers, database servers en IVR systemen op basis van GNU/Bayonne 1.2.x
- Het configureren van routers (Cisco IOS, Livingston), firewalls en VPN verbindingen (Cisco IOS)
- Netwerkontwerp, -beveiliging en -beheer
- High availability systemen (MySQL clustering, Linux HA, Cisco HSRP)
- Het begeleiden van een stagiair
Software Development Engineer bij Tulip computers B.V., Rosmalen, afdeling R&D
1998 - 2000
- Het onderhouden van diverse BIOS-en van Phoenix
- Het qualificeren van nieuwe BIOS-en
- Het schrijven van BIOS-oplossingen voor het milleniumprobleem
- Ontwikkeling en onderhoud aan software-utilities in de programmeertalen C/C++ en Assembly(Intel x86)
Afstudeerstage bij Tulip Computers B.V., Rosmalen, afdeling R&D
1998
- Opdracht: Schrijven van software met betrekking tot Net PC & Remote BIOS update via het netwerk
Stage (5 maanden) bij de Valkieser Group, Hilversum, afdeling Valkieser Systems Engineering
1997
- Support leveren op computersystemen (PC, Macintosh)
- Het installeren van een op Linux gebaseerde printerserver met behulp van Samba en LPD
Stage (5 maanden) bij Tulip Computers B.V., Rosmalen, afdeling R&D
1996 - 1997
- Het schrijven van software utilities voor USB (UHCI interface)