An experienced and innovative software developer who is adept with working on projects such as designing and developing software from scratch, restructuring and auditing codes and implementing new features on existing products. Disciplined, thorough planner and an effective communicator. Motivated to work on projects where there is the flexibility of infrastructures and tools that will give room for innovation.
An educational platform for learning Purely Functional Scala. Created the platform and the set of industrial processes, developed the content and used these processes to develop two courses and one book which are published on the platform.
Performed full-stack development of an online shop. Developed and designed the site with Stripe and Microsoft Azure integrations in a purely functional way from scratch. At its most developed state, the prototype had about 20 tables in its database. (The startup suspended the project after 7 months since they need to strategize their next steps.)
An extension to Scala programming language. Implemented a theory called Algebra of Communicating Processes (ACP) as a DSL that extended the original Scala syntax. Defined a custom parser and compiler for the SubScript language (in Scala, executed on a JVM). Integrated the parser and the compiler into the Scala compilation sequence via SBT and Scala compiler plugins.
A tool to generate PowerPoint presentations from templates created using a DSL developed by us. Written using the Scala extension, SubScript, and its library, SubScriptFX. Forked the Scala compiler and extended the language with additional syntax that helps approach concurrency with the tool set of Mathematics.
Created two video courses: “Spark for Data Analysis in Scala” and “Advanced techniques for Data Analysis in Scala” and published the book “Mastering Functional Programming”. These book and video courses contain an extensive and comprehensive processes of learning Scala for Functional Programming.
A library to simplify learning the Japanese language with Anki SRS. It provided the means to analyze Japanese entities - words, kanjis and radicals - and generated Anki flashcards from them. Created the framework to call out the following functions:
JEntities - defines 3 model classes - Radical, Kanji and Vocabulary - which can be used to access the properties of these entities.
JOrders - allows you to "order" your flashcards! Also has means to serialize them into a zip archive.
JText - you take an arbitrary Japanese text, provide it to the means of this library and it extracts all the vocabulary out from it. As simple as a method invocation.
MSc of Law, National University, Odessa Law Academy, 2017