Skip to content

Latest commit

 

History

History
484 lines (424 loc) · 14.6 KB

cv.org

File metadata and controls

484 lines (424 loc) · 14.6 KB

memory heap / cv

[HTML][PDF]

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

Current job

Technical Skills

Operating Systems

GNU/Linux

:active-skill?: yesUserspace programs and drivers development, administration, cron user, LVM user.

CLI tools: sed, awk, grep, find, ssh tunneling, screen etc.

  • source-based: Gentoo (for several years it was my main desktop/server and development system), Gentoo Hardened.
  • 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

:active-skill?: yes

https://guix.gnu.org/

User, contributor.

Android

:active-skill?: yesApplication develpment, debugging with ADB. Took a part in RT Android project in 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)

:active-skill?: noTinkered with it, tried to write a translator (server) for the system.
  • deb-based: Debian GNU/Hurd

Xenomai

:active-skill?: no

RT GNU/Linux

:active-skill?: no

Microsoft Windows (98, XP, …)

:active-skill?: no

Programming Languages

C

:active-skill?: yes

Client-server applications, libraries, Linux kernel drivers development.

Contributions to libssh library.

Project examples:

Also I started a free online course on system programming (in Russian): https://www.youtube.com/playlist?list=PLoAJ3BxlddnopWsE_IQYkFYXUkmYA4-Ar

C++

:active-skill?: yes

Examples:

  • MST: Multi-seat toolkit that allows to make multi-seat configurations.
  • Azbook: Generic authentication and file synchronization system for WebDAV servers.

Scheme

:active-skill?: yes

Examples:

Java

: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

:active-skill?: yes

Bash, CShell

I participated in a commercial Bash/system administration course development for “BaseALT” LLC.

JavaScript

:active-skill?: yes

Emacs Lisp

:active-skill?: yes

Ruby

:active-skill?: noSystem automatisation, basic web application development.

Python

:active-skill?: yesExperience:
  • Development of an extension for MoinMoin wiki engine.
  • Teaching a beginner Python course for students in a college.

Examples:

AVR Assembly

:active-skill?: noExamples:

Lua

:active-skill?: no

Frameworks

Qt

:active-skill?: yes

Examples:

  • MST: Multi-seat toolkit that allows to make multi-seat configurations.

Ruby On Rails

:active-skill?: no

Markup Languages

Emacs org-mode, Texinfo, HTML, Wiki syntax, Markdown, LaTeX.

Texinfo examples:

Software Testing

  • GitLab/GitHub CI
  • JUnit
  • SRFI-64 (a testing framework for Scheme.)

Administration

Docker

:active-skill?: yes
  • Dockerfile
  • Docker Hub
  • Docker Compose

LVM

:active-skill?: yes

SELinux

:active-skill?: no

Cron

Init Scripts (openrc, System V, upstart)

SystemD

Network Protocols

SSH, TCP/IP family, ONC RPC, SCTP, CoAP, WebSocket.

File Formats/Standards

CSV / DSV (Unix-style / RFC 4180)

iCalendar (RFC 5545) / vCard (RFC 6350)

Portable Network Format (PNG)

INI

Server-Side Software

Web Servers

lighttpd, apache

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

:active-skill?: noDeployment, maintenance, interaction with the API.

NextCloud

:active-skill?: yesDeployment, maintenance, interaction with the API.

FreedomBox

Telecommunication software

Jitsi

:active-skill?: yes
  • Deployment in a production environment.
  • Maintenance.
  • Monitoring.
  • Patching.

Learning Management Systems (LMS)

Moodle

:active-skill?: yes
  • Maintenance.
  • Integration with other services.
  • Course/test development, daily usage.

Security

GNU Privacy Guard

:active-skill?: yes

Use GPG for email communications and to sign software releases.

GPG Key: D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F

Off-the-record (OTR) messaging

:active-skill?: no

Let’s Encrypt

:active-skill?: yesHome and production use.

Development and Build Tools

RCS/Git/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

Tools

OpenOCD

:active-skill?: no

Buses

Serial

:active-skill?: yes

I2C

:active-skill?: yes

Platforms

Arduino (AVR Family)

:active-skill?: yes

STM32

:active-skill?: yes

ESP8266 / ESP32

:active-skill?: yes

Raspberry Pi

:active-skill?: noKernel compilation, GPIOs, etc.

Parametric 3D modeling

:active-skill?: yesI’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

  • Good knowledge of Linux kernel standards and GNU coding standards.
  • Expirience of interaction with free software community. Contributions to:
    • GNU Guix (list)
    • GNU Guile-RPC
    • libssh (list)
    • FreeCAD (list)
  • Backus-Naur Form (BNF), ABNF
  • Gnuplot

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.

Copyright © 2021-2024 Artyom V. Poptsov

Verbatim copying and redistribution of this entire page are permitted provided this notice is preserved.