I provide software engineering services. My goal is to deliver quality
craftsmanship — robust, reliable, and resilient software,
and well-written, useful documentation.
software engineering
I can work either in full-scope mode driving the
software engineering process from design, through
implementation (including testing), to documentation;
or in limited-scope mode taking responsibility for
individual parts of the process, however fine-grained they may
be.
operating systems and platforms
I work mainly on Unix-like operating systems —
various Linux and BSD distributions; as well as on other
platforms conforming to the POSIX standard. RTOS or bare
metal platforms are also in-scope for the work I do.
programming languages
I can design, implement, and maintain software written in
C++,
C,
Python,
JavaScript,
Perl,
and Tcl.
I can also write supporting scripts in BASH.
technical writing
Documentation is an inseparable part of the software
engineering process.
I can write user documentation presenting the
software to end users, and explaining how it should be
used; and technical documentation recording the intents
behind the inner workings of the system, usage of its APIs,
and the build process.
training
I can provide training on the topics of software design and
development, technical writing, and usage of Linux operating system.
I have experience in delivering conference presentations, as well as
giving lectures and organising workshops in an academic setting.