Senior Software Architect, Team Lead, Senior Software Developer
Senior Functional Developer
Researcher, writer, speaker, OSS contributor
• Active languages: Haskell, PureScript
• Inactive languages: C++ (C++11, C++14, C++17), Python, C#
• Technologies: FP, OOP; SQL, NoSQL, Qt, QML, XML, JSON, Boost, STL, .NET, WPF, WCF, NHibernate, Node.JS, RabbitMQ, SOLID, GRASP, RESTful, Regex
• DBs: PostgreSQL, MySQL, Redis, RocksDB, MS SQL Server, SQLite
• Multithreading & Concurrency, Software Transactional Memory, concurrent domain models, concurrent data types, coroutines / async (including async monads), FRP, Actor models
• Specialization: Software Design and Architecture, Functional Design and Architecture, DSLs, testing, desktop, databases, research, data classification.
• FP Design and Architecture: Monads, Applicatives, Functors, Free Monads, Comonads, Final Tagless, ReaderT Pattern, Effect Systems, Service Handle Pattern, eDSLs, external DSLs (parsers & translators), Combinatorial eDSLs, Type-Level Design, Advanced Type Systems, Persistent Data Types etc.
• Testing: functional requirements testing (unit, functional, integration, acceptance, etc), non-functional requirements testing (performance, space/memory consumption, load etc), testing vision & automation, fuzzy testing, property-based testing
• Technical writing skills (both English and Russian languages)
• Spoken English (Upper-Intermediate)
Author of the "Functional Design and Architecture" book
Speaker of many Russian conferences and meetups: C++ Russia, FPure, FPConf, C++ Siberia, Dev2Dev, DevDay, LambdaNsk etc.
Leader of "LambdaNsk" - Novosibirsk functional programmers community