Hi, I'm Gram

  • Senior Software Engineer from Netherlands.
  • Python, Go, Elixir, Web, Security.
  • Passionate about my craft.
  • Public speaker and teacher.
  • A lot of Open Source.
  • Constantly tinkering and experimenting.
  • Always smarter than yesterday.

Experience

8. Sendcloud

2022-08 — now

  • Maintain and empower the Django monolith.
  • Plan and lead the way to microservices.

7. Nicolab

2020-10 — 2022-08

  • Develop and maintain most of Python and Go components of the project.
  • Ensure code quality.
  • Redesign the project architecture.
  • Design, deploy, and maintain GitLab CI pipelines.
  • Do numerous knowledge sharing sessions, mostly on advanced Python.
  • Research and introduce new services, like Nats, Argo Workflow, Fluentd, StatsD.
  • Colaborate with AI engineers to ensure we deliver safe and reliable ML models.

6. EclecticIQ

2019-05 — 2020-10

  • Research and develop text processing solutions (OCR, NER).
  • Apply AWS solution (SageMaker, Textract, Comprehend).
  • Build OpenAPI system and documentation for all endpoints.
  • Discover, report, and fix vulnerabilities in the platform.
  • Create CI/CD pipeline on Gitlab CI.
  • Research and develop new REST API (based on JSON:API).

5. Cindicator

2018-06 — 2019-02

  • Create Spotify's Luigi based ML pipeline.
  • Rewrite trading platform that retrieves information from cryptocurrency exchanges, pass it into strategies, get a prediction about cryptocurrencies prices and make trades.
  • Make simple trading strategies.
  • Improve testing practice, write a lot of tests.
  • Integrate code quality solutions on CI, create style guides.

Projects

gweb

Interact with browser from Go. Manually crafted WebAPI interoperation library.

genesis

Generic functions for Go 1.18: Filter, Map, Reduce, Min, Sort, etc.

TextDistance

Compute the distance between sequences. 30+ algorithms, pure python implementation, common interface, optional external libs usage.

deal

Design by contract for Python. Write bug-free code. Add a few decorators, get static analysis and tests for free.

DepHell

The best Python project manager, all-in-one solution with a smart resolver.

More!

I have 119 Open Source projects. Check them out at orsinium.dev/projects.html.


Languages

Python

This is my favorite language, I'm in it about 8 years (since Python 3.4). I know source code of almost all stdlib, have many Python-based Open Source projects and public talks.

Go

I'm quite proficient with Go. I reach to it when I need a good performance: games, small systems (thanks to TinyGo), small but important APIs. Oh, and of course I have some open-source projects on Go. At the moment, I have 4 years of experience (since Go 1.11).

Elixir

I enjoy Elixir and believe it's the best functional language. I know some good of chunk of Erlang, had experience with a basic web app on Phoenix with LiveView, understand Erlang concurency, know some parts of OTP, and eager to dive deeper in this beautiful ecosystem.

HTML & CSS

I'm pretty fluent with HTML, CSS, and even quirks of WebAPI. I might miss on some modern features like flexbox, though. Mostly, because Bootstrap is sufficient for my personal projects and it abstracts away some markup complexity.

Frontend (JS)

With modern JS I'm less familiar. Mostly, I use for my projects AlpineJS, WASM, and LiveView. If you need a frontend developer, it's not me. But if you need from me just a good understanding of your frontend, I can easily crack it.

More!

I like to learn new things and conceptions. I have experience with Haskell, Idris, RPython, Pony, Nim, Crystal, Clojure, Scala, JS, Ruby. I'm not afraid to read and fix code on any language.

Hard skills

Quality Assurance

Automated testing (unit, integration, acceptance, regression), static code analysis, formal verification, contract programming, mutation tests, type theory. I like to push boundaries of my code to see how it performs in extreme situations, to find interesting corner-cases, to dig math behind programming.

Security

I have an Information Security red diploma, interested in practical aspects of security, have many publications on different topics, visited some security conferences. I was a founder and leader of the CTF team that have gotten 6th place on an international contest (alert1 team). In Smena team I've made global security audit, fixed many security issues, integrated some security systems like brute force protection and intrusion detection.

DS and ML

At the university, I worked in the linguistic department where I researched language and text influence, adopted Claude Shannon's information theory to natural languages. In Cindicator I wrote simple trading strategies that get information from crypto exchanges and make predictions about cryptocurrencies prices. On free time I learn Machine Learning and build different cool models. See my projects for examples.

Software Architecture

I know design patterns, antipatterns, refactoring techniques, 12 factors, SOLID principles. In Cindicator a was the architect for the trading platform from the first lines of code to the successful launch.

Linux

I live in Linux for 8 years, can solve any issue from a terminal. I've worked with different Linux distros (Ubuntu, Debian, CentOS), set up physical servers, VPS, Raspberry Pi, Orange Pi.

Logic

I'm familiar with formal logic basics, boolean logic, math logic, a little bit with proof theory. deal is my experiment on how good you can prove code automatically, without writing proofs at all.

Math

I math! I watch Numberphile, solve riddles and equations for fun, know how to apply math in my work to make code faster and even nicer.