Michael “MC” Cardell Widerkrantz
mc [at] hack.org
4096R/55CEB57B 2012-11-01
These days I work with applied research and programming at Tillitis, a small company that builds open hardware. I'm not available for assignments.
For a while I used to work as an independent consultant specialising in software development, network protocols, devops, and even system administration focusing on FreeBSD and Linux.
Most of the software I work with is released under liberal licenses, so called free, libre and open-source software. I also maintain some software projects.
I've written network protocol parsers, some kernel code and many *nix server programs. I've worked with many different languages and platforms, ranging from assembler to Python, but currently prefer Go/golang when I'm not writing Emacs Lisp to customize my main environment, Emacs. I've done very little GUI programming with one notable exception: an X11 window manager called mcwm.
Design and development in Go (Golang), C, Perl and Python under Unix-like operating systems or embedded, even bare metal.
Typical work include design and implementation of network protocols, writing network server programs, network tools and systems software, often in prototyping or proof-of-concept scenarios.
Porting and custom enhancements of programs in Unix-like environments.
Setup of complex systems using devops tools, especially Ansible.
Detective work to figure out how your system was set up and migrating to fully documented automated tools (Ansible) under version control (preferably Git).
Technical advice (both pre- and post-sale) on programming, security, computer networks, servers and infrastructure.
If you want a buzzword compliant list of things I think I know something about, see my technology profile.
In a job or an assignment I expect to spend most of my time looking at an Emacs frame, writing Go or C code (not C++!), typically compiling under FreeBSD or Linux. Some of the time I write Emacs Lisp, Perl, Python, awk, Bourne Shell or rc scripts to help me in my work.
During a typical day some time is also spent pouring over network traces from tcpdump or Wireshark or similar tools.
Most of the documentation I write using Emacs, probably in Markdown or similar.
I work mostly from home. I keep in touch with co-workers mainly through e-mail, chat, and video meetings, preferably open protocols.
I like pair programming. It can be as simple as audio with Mumble and a shared tmux.
I work part time, 30-32 hours a week.
Last updated: <2023-06-05 10:11:20 MEST>