I am currently the main maintainer of IMUNES (http://imunes.net), a network emulation framework for FreeBSD (recently also ported to Linux). Along with its GUI written in Tcl/Tk, it is based on VNET jails and netgraph. I fixed bugs and developed new features, including hacking netgraph kernel modules, for IMUNES since 2013 and thereby accumulated experience with FreeBSD (versions 9 to 12).
I work on a PhD thesis with the subject of high-throughput hardware/software packet processing and filtering. I gained experience with hardware FPGA designs for NetFPGA SUME communicating with a Linux machine and I have developed custom hardware modules for it written in (Verilog) HDL. I also work on a Netmap-based userspace packet processing application for FreeBSD and Linux written in C, where I developed an eBPF/XDP module (for Linux). I never wrote a device driver from scratch, but have some rudimentary experience in modifying existing ones.
Programming languages and technologies I worked with in the past include: C, Tcl, Tk, shell scripting, Python, VHDL, Verilog, circuit layout (KiCad), SVN, GIT...
Email: <denis DOT sale AT SPAMFREE gmail DOT com>