Software Development
I've been working as software developer since 1998 (since 2003 on a freelance basis). Following is a list of the knowledge areas for which I offer development and consultancy services.
Relational Database Systems
- database modeling
- PostgreSQL programming and administration
- SQL & client programming (C/libpq, Java/JDBC and others)
- server programming (PL/PgSQL procedures, C extensions)
- administration (DBA), including setups with replication and connection pooling
- Oracle DB programming
- SQL & client programming (Java/JDBC)
- server programming (PL/SQL procedures)
- migrations of existing systems (for example MySQL, Oracle DB) to PostgreSQL
Data Science, Data Analysis, Research & Development
- programming and analysis using MATLAB and Octave
- data acquisition, custom ETL systems
- statistics, machine learning and deep learning
- number crunching and high-performance computing in C/C++
Linux/Unix, C/C++, Java and Shell Programming
- operating systems: Linux and other Unix-like systems (OpenBSD, macOS), VxWorks and others
- C/C++ programming:
- system programming
- network programming
- Bash scripting
- batch processing
- system administration scripts
- tools: GNU toolchain (make, gcc, gdb), clang, cmake, bash, ssh, svn & git, standard Unix & GNU tools
Web Development, XML/JSON and Web Hosting
- backend programming:
- Java, Servlets/JSP on Apache Tomcat
- Javascript on Node.js/Express and Apache httpd
- XML, JSON and related technologies and tools
- hosting/deployment/devops:
- Linux system administration (Debian, Amazon Linux, the Linux distributions of a prominent North American vendor until they decided to kill CentOS-Linux, etc.)
- cloud computing with Amazon Web Services (AWS): EC2, RDS, Route 53, S3, etc...
- HTML5/CSS and Javascript
Note: many of the names for software products mentioned on this page are registered trademarks.