memory heap / cv
Table of Contents
- Introduction
- Experience
- Technical Skills
- Operating Systems
- Platforms
- Programming Languages
- Frameworks
- Markup Languages
- Software Testing
- Administration
- Network Protocols
- File Formats/Standards
- Server-Side Software
- Telecommunication software
- Learning Management Systems (LMS)
- Security
- Development and Build Tools
- Embedded Development/MCU Firmware Development
- Parametric 3D modeling
- 3D-printing
- Other
- Licenses
- Writing Skills
- Languages
Introduction
My name is Artyom V. Poptsov, I also known as "avp".
I'm creative, self-motivated and hard-working; atheist and skeptic, very interested in science. I enjoy learning of well-designed technologies and gaining deep knowledge in things I'm doing. Looking for jobs and opportunities that benefit society and make people's lives better.
Heavily involved in free/libre software development, working on my own free software projects in my spare time.
Main technical interests: programming, functional programming, Lisp, GNU/Linux, free/libre software, operating systems, microkernel-based operating systems, distributed/decentralized systems, text processing, parsers, finite-state machines, compilers.
Co-founder of CADR hackerspace: https://cadrspace.ru
Contacts
- Home page: https://memory-heap.org/~avp/
- Source code repositories: GitHub, GitLab, Codeberg
- Email:
poptsov.artyom-AT-gmail.com(replace-AT-with@.) - Delta.Chat
Experience
- 2011-2014: Software designer @ MERA.
- 2014-2016: Software designer @ El-Sys.
- 2013-present: Free software hacker.
- 2017-2026: CTO @ AZ Company Group LLC
- 2017-2025: Head of "MCU and microprocessor systems programming laboratory" and 3D-printing lab @ Nizhniy Novgorod Technical Colledge.
- 2025-present: Teacher @ Nizhniy Novgorod Technical Colledge.
Technical Skills
Operating Systems
GNU/Linux
knowledge-level: master experience: more than 13 years active-skill?: yes
Userspace programs and kernel drivers development, administration, debugging, kernel configuration and compilation.
CLI tools: sed, awk, grep, find, rsync, ssh tunneling, screen
etc.
Technologies: LVM, mdadm, rsnapshot, SystemD, AppArmor, buildroot.
- source-based: Gentoo (for several years it was my main desktop/server and development system), Gentoo Hardened, GNU Guix.
- deb-based: Ubuntu (regular use as desktop/development system), Debian.
- rpm-based: Fedora (also have an experience with preparing of RPM-packages), ALT Linux.
GNU Guix
experience: more than 4 years knowledge-level: good active-skill?: yes
User, contributor. My Guile-SSH library is used in GNU Guix for distributed compilation and systems deployment.
Android
experience: more than 1 year knowledge-level: basic active-skill?: yes
Application develpment in Java, debugging with ADB. Took a part in RT Android project at MERA.
Taught classes on Android development for students in a college.
Projects:
- RecBot: Automatic remote-controlled multiple camera recorder for Android.
GNU Hurd (a microkernel-based OS)
experience: less than 1 year knowledge-level: basic active-skill?: no
Tinkered with it, tried to write a translator (server) for the system.
- deb-based: Debian GNU/Hurd
Xenomai
experience: less than 1 year knowledge-level: basic active-skill?: no
Worked with Xenomai during my involvement in RT Android project at MERA.
RT GNU/Linux
experience: less than 1 year knowledge-level: basic active-skill?: no
Worked with RT Linux patches during my involvement in RT Android project at MERA.
Microsoft Windows (98, XP, …)
experience: more than 4 years knowledge-level: basic active-skill?: no
Platforms
Architectures
x86,x86_64
I have experience in programming for those platforms on several languages. Also I have experience in building and maintaining computers and servers.
RISC-V
- I'm tinkering with StarFive VisionFive2: installed an official Debian image on it; also created a patch series in 2025 (which was successfully merged into the upstream) for GNU Guix to create a better image for the board.
- CH32V003 programming (C, Assembly.)
- Also I've built PC based on Milk-V Jupiter, Spacemit M1/K1 Octa-core RVA22 RVV1.0 RISC-V SoC, 2TOPS Mini-ITX. I'm planning to run GNU Guix on it.
Hardware
- Arduino (AVR Family)
knowledge-level: master experience: more than 5 years active-skill?: yes
- STM32
knowledge-level: good experience: more than 1 year active-skill?: yes
STM32F103, STM32F407, STM32H750IBK6.
- CH32V003
knowledge-level: basic experience: less than 1 year active-skill?: yes
- ESP8266 / ESP32
knowledge-level: good experience: more than 3 years active-skill?: yes
- Raspberry Pi
knowledge-level: good experience: more than 2 years active-skill?: no
Kernel compilation, GPIOs, etc.
Programming Languages
C
knowledge-level: master experience: more than 13 years active-skill?: yes
Client-server applications, libraries, Linux kernel drivers development.
Contributions to libssh library.
Project examples:
- Guile-SSH: GNU Guile libssh bindings.
- Guile-Udev: GNU Guile libudev bindings.
Also I started a free online course on system programming (in Russian): https://www.youtube.com/playlist?list=PLoAJ3BxlddnopWsE_IQYkFYXUkmYA4-Ar
C++
knowledge-level: good experience: more than 4 years active-skill?: yes
Qt, Arduino.
Examples:
Scheme
knowledge-level: master experience: more than 12 years active-skill?: yes
Examples:
- Guile-SSH: GNU Guile libssh bindings.
- Guile-SMC: GNU Guile State Machine Compiler.
- Guile-DSV: GNU Guile DSV/CSV format parser.
- Guile-PNG: Portable Network Graphics (PNG) library for GNU Guile.
- Guile-INI: GNU Guile INI Format parser.
- Guile-Deck: GNU Guile Matrix client.
- Metabash: Distributed pipes for GNU Guile.
Java
knowledge-level: good experience: more than 6 years active-skill?: yes
Overview:
- Android application development. JNI.
- Alfresco module development.
- Teaching object-oriented programming course in Java for students in NNTC.
Examples:
Unix shell scripts
experience: more than 10 years knowledge-level: master active-skill?: yes
Bash, CShell
I participated in a commercial Bash/system administration course development for "BaseALT" LLC.
JavaScript
knowledge-level: good experience: more than 2 years active-skill?: yes
Emacs Lisp
knowledge-level: basic experience: more than 10 years active-skill?: yes
Ruby
experience: more than 10 years knowledge-level: basic active-skill?: no
System automatisation, basic web application development.
Python
experience: more than 6 months knowledge-level: basic active-skill?: yes
Experience:
- Development of an extension for MoinMoin wiki engine.
- Teaching a beginner Python course for students in a college.
Examples:
- MoinMoin Abbreviation Parser
- Contributed a patch to FreeCAD.
AVR Assembly
knowledge-level: basic experience: less than 6 months active-skill?: no
Examples:
- "Chasing lights" in AVR Assembly.
- "AVR assembly with AVP" series on YouTube.
RISC-V Assembly
knowledge-level: basic experience: less than 1 year active-skill?: yes
- CH32V003 assembly programming.
- Tinkering with StarFive VisionFive2 board.
Lua
knowledge-level: basic experience: less than 1 year active-skill?: no
Frameworks
Qt
knowledge-level: good experience: more than 3 years active-skill?: yes
Examples:
- MST: Multi-seat toolkit that allows to make multi-seat configurations.
Ruby On Rails
knowledge-level: basic experience: less than 1 years active-skill?: no
Markup Languages
Emacs org-mode, Texinfo, HTML, Wiki syntax, Markdown, LaTeX.
Texinfo examples:
Software Testing
- GitLab/GitHub CI
- JUnit, Check.
- SRFI-64 (a testing framework for Scheme.)
Administration
Docker
knowledge-level: good experience: more than 2 years active-skill?: yes
- Dockerfile
- Docker Hub
- Docker Compose
Kubernetes
knowledge-level: basic experience: less than 2 years active-skill?: no
- k8s
LVM
experience: more than 2 years knowledge-level: basic active-skill?: yes
AppArmor
knowledge-level: basic experience: less than 1 year active-skill?: no
SELinux
knowledge-level: basic experience: less than 1 year active-skill?: no
Cron
Init Scripts (openrc, System V, upstart)
SystemD
Network Protocols
SSH, TCP/IP family, ONC RPC, SCTP, CoAP, WebSocket, MQTT.
File Formats/Standards
CSV / DSV (Unix-style / RFC 4180)
- Related projects: Guile-DSV.
iCalendar (RFC 5545) / vCard (RFC 6350)
- Related projects: Guile-ICS.
Portable Network Format (PNG)
- Related projects: Guile-PNG.
INI
- Related projects: Guile-INI.
Server-Side Software
Web Servers
lighttpd, apache, nginx.
Wiki
- MediaWiki – administration, maintenance, usage (I used to write some articles for Wikipedia.)
- MoinMoin – administration, maintenance, usage.
Git Servers
- GitLab (deployment, maintenance, interaction with the API.)
- Gitolite
"Cloud" Software
- ownCloud
experience: more than 1 year knowledge-level: basic active-skill?: no
Deployment, maintenance, interaction with the API.
- NextCloud
knowledge-level: good experience: more than 3 years active-skill?: yes
Deployment, maintenance, interaction with the API.
- FreedomBox
knowledge-level: good experience: more than 5 years active-skill?: yes
Telecommunication software
Jitsi
experience: more than 2 years knowledge-level: good active-skill?: yes
- Deployment in a production environment.
- Maintenance.
- Monitoring.
- Patching.
Learning Management Systems (LMS)
Moodle
knowledge-level: good experience: more than 4 years active-skill?: yes
- Maintenance.
- Integration with other services.
- Course/test development, daily usage.
Security
GNU Privacy Guard
experience: more than 5 years knowledge-level: basic active-skill?: yes
Use GPG for email communications and to sign software releases.
Off-the-record (OTR) messaging
knowledge-level: basic experience: more than 6 months active-skill?: no
Let's Encrypt
experience: more than 1 year knowledge-level: basic active-skill?: yes
Home and production use.
Development and Build Tools
Git/RCS/SVN, GNU Make, GNU Autotools (Automake, Autoconf, Libtool), scons,
GDB/DDD, strace, GNU Emacs, NetBeans, Eclipse, distcc.
Gave a talk in 2015 on version control systems for students of NNTC. Slides: https://github.com/artyom-poptsov/talks/tree/master/vcs
Embedded Development/MCU Firmware Development
Parametric 3D modeling
experience: more than 3 years knowledge-level: good active-skill?: yes
I'm mostly using FreeCAD nowadays. Some of my works can be found here: https://www.thingiverse.com/a_v_p/designs
3D-printing
I have experience in:
- Building, maintaining and using 3D-printers (RepRap and alike.)
- Preparing 3D-models for printing.
Other
Licenses
I have basic understanding of the following licenses:
- Creative Commons
- GNU GPLv3
Writing Skills
Science, Programming, Art and Radio-electronics Club (SPARC) book
An open-source book (CC-BY-SA 4.0) I'm working on. The book is written in LaTeX and published on GitHub. Also the book is in the GNU Guix official repository.
Languages
Russian
Native speaker.
English
Good reading/writing skills (techical documentation as well as regular texts such as articles or books, communication through email and IM). Basic verbal skills (I have experience in verbal communication with non-native English speakers), very good understanding of spoken English.
Examples of technical documentation written by me:
German
Very basic reading/writing skills.
Norwegian
Very basic reading skills.
Copyright © 2021-2026 Artyom V. Poptsov
Verbatim copying and redistribution of this entire page are permitted provided this notice is preserved.