Solana developer

Solana developer

RedCode

Work experience — 16 years 5 months 


January 2021 — till now 1 year 3 months 
Aurora Labs (NEAR Protocol)
aurora.dev/
Bridge engineer

The company is developing a solution for scaling Ethereum. Stack: Rust, Solidity, Web3, NATS

My responsibility:

- Bridge indexer (indexes transactions passing through the Rainbow Bridge between Ethereum and Near)

- Bridge monitor (monitoring of suspicious transactions in terms of security, automation of incident response)

January 2020 — January 2021 1 year 1 month
Insolar
Switzerland, insolar.io
Solution Architect

The company has developed a blockchain project for banks and corporations. Technological stack: Go

+ Web.

Duties:

I became a Solution Architect to strengthen the development team and accelerate the development of infrastructure services.

(1)

Insolar's architecture is complex, I needed to make sure I understood all aspects.

I wrote a translator from Go code to UML State Diagram to visualize the node algorithm. This state machine processed messages from other nodes. I have applied my experience in creating compilers that have interested me for a long time.

As a result:

- some bugs were found,

- it became easier to keep the documentation up to date,

- architectural design has accelerated: it was easier to make changes on the diagram,

(2)

It is important that complex blockchains are understandable to users. This requires a service that collects network data, stores it and provides it to users.

To solve this problem, I was working on an architectural design for the Observer component. Our chief architect supervised this work.

(3)

For a startup, a patent portfolio is important - it affects the price of a possible sale of the company and obtaining funding.

I have patented architecture with a US patent attorney and have filed several patents

September 2018 — December 2019 1 year 4 months
Waves
Moscow, waves.tech
Blockchain researcher, Node developer

The company is the largest developer of blockchain solutions in Russia, has an open blockchain Waves with support for the implementation of blockchain contracts written in its own Ride language. The blockchain is written in Scala, the frontends are ModX, React, React Native. I came into the role of blockchain researcher to explore the possibilities of implementing unusual (at the time) blockchain solutions such as NFT tokens, each of which is unique (like a ball autographed by a baseball player) and not fungible.

I have prepared many documents describing these features and the changes that need to be made to implement them.

I became interested in the Ride language, which is used to execute Waves smart contracts. It was influenced by Scala and at the time of its creation, the developers did not expect that someone would investigate someone else's bytecode (for example, to search for vulnerabilities). When this task became relevant, it was found that during the compilation process a lot of important information about the original language constructs was lost.

I have developed a decompiler for Ride that finds compilation patterns from bytecode and restores lost semantic constructs. In its development, I applied the experience of writing research compilers, which I received earlier. This decompiler is written in Scala and it makes the analysis of smart contracts more convenient.

After that, in the process of reorganization, I was transferred to the Node development department, where I did not work very long, as I was more interested in research and architectural tasks.

March 2017 — September 2018 1 year 7 months
Private company (blockchain statup)
Saint Petersburg
Team Lead, Virtual Machine developer

A startup in the post-ICO stage, is developing a blockchain project. Development stack - Java, some separate services in C++.

I was hired for the Team Lead position, as a person who understands how blockchain works and can implement its support on the nodes of the decentralized network. I was interested in blockchain earlier, and I was interested in the prospects of this technology.

The startup needed to develop TestNet, and before that, create a plan for the development of the project as a whole. I also suggested implementing smart contracts.

In practice, in addition to this, I was engaged in architectural design, hiring and training developers, setting and monitoring tasks - this, in general, is normal for startups.

I split the development effort into four departments:

- node

- developers of block explorer

- mobile applications

- web

Each department had 6-8 developers and 2-3 testers, about 40 people in total. I implemented scrum and wrote several utilities that track the progress of tasks and signal when they are behind schedule.

For each department, I drew up a Gantt chart and a general one for the project, laying in reserve time in it - as it turned out not in vain, since we finished the project three days before the presentation in

Hong Kong.

By agreement with the CEO and CTO, after launching the test network, I began to develop a virtual machine for executing smart contracts and related functionality. At that moment, I wanted to take a break from the busy schedule and focus on research tasks, and the departments grew their own team leaders.

By the time the project was completed, he had:

- a scalable system of interacting nodes in a test distributed network (about 400 nodes)

- constant traffic at the level of 500-1000 transactions per day

- developed system of smart contacts execution

- a compiler from JS-like language to Forth-like bytecode

- trained team leaders in each department

My achievements:

- Test Net creation

- Made a virtual machine running smart contracts written in Forth-like language (somewhat more

powerful and extensible than Bitcoin Script).

- Made a compiler from JS-like high-level language into bytecode.

December 2015 — March 2017 1 year 4 months
Automaton
Saint Petersburg
TeamLead, IT-Manager

The company is engaged in the development and operation of automated parking lots.

I led a research project to develop a new hardware and software parking system.

Technologies:

- PCB Design - Kikad, Altium Designer

- Programming: С / С ++, Assembler, Erlang (telephony), PHP / JS: Symfony + React (web interface),

EmacsLisp - code generation for "executable specifications" and utilities for collaborative remote work in a team

- Architectural stack - Linux on ARM Cortex A8 and Symphony + React in the control interface.

The development was carried out from scratch, in stages:

- Hiring employees

- Selection of electronic components,

- Creation of printed circuit boards,

- Writing low-level code that controls barriers and polls sensors

- Writing business logic and web interfaces through which parking can be controlled remotely,

- Internet telephony connection to communicate with the parking client

The first implementation took place six months after the start of development, the development fully paid off in a year. The developed solution is ahead of the competitors. In total, 50-60 people worked on the project (excluding the commercial department, which found clients and concluded contracts):

- 2 design engineers (topologists) for the design of printed circuit boards

- 1 Linux kernel driver developer

- 3 full stack web developers (PHP Symphony React)

- 2 android developers

- 1 ios developer

- 4 QA specialists

- 1 3D modeler

- 1 Erlang developer (telephony)

- 10-15 pickers-pickers of the parent company (they assembled according to design documentation)

- 10-20 implementation engineers, installers, electricians (at the implementation stage)

- 1 TeamLead, he is also the technical project manager (it was me)

My achievements:

- Designed the hardware and software architecture of the paid parking automation system.

- Planned and organized software and hardware development work, including selection of electronic

components and circuit design.

- Implemented business logic and presentation layer (Operator Workplace) on Symfony and React

- Supervised the implementation of the transport layer and the hardware abstraction layer (C / C ++, kernel modules, device drivers)

- Organized parallel development on a modular basis to speed up product creation and kanban methodology

- Implemented Continuous Integration and Lifecycle Management Process (Releases, Bug Fixes, Feature Additions, Technical Quality Control, Automated Testing)

- Implemented secure (digital signature) and fail-safe (rollback to the previous version if tests fail) firmware update via the Internet.

- Automated documentation generation and storage using GIT based versioning and "executable specifications".

April 2015 — December 2015 9 months
BKN
Saint Petersburg, bkn.ru
TeamLead, Head of IT

The company is the second local real estate website after the Real Estate Bulletin (https://bn.ru).

Receives income from advertising on the site and ads from the sale of real estate.

Supervised the development and promotion of information technology for real estate agencies (b2b and b2c).

Technology stack: C # and ASP.NET, ExtJs, 3 people were involved in development.

The site showed a decline in ad revenue for the six months before I joined the company. It was necessary to increase the resource in the subject and interest advertisers.

Achievements:

- Using the data of real estate agencies, I created a section on residential complexes and new buildings, which soon reached 60% of the site in volume, which allows you to dramatically increase advertising revenues on.

- Implemented on the site a section for the search and selection of apartments, rooms and residential buildings of the primary and secondary market, integrated it with the inter-agency database of real estate objects.

- Formed an SEO strategy for website development.

After the completion of the work, advertising revenue and traffic began to show steady growth.

The company does not exist at the moment

February 2014 — March 2015 1 year 2 months 
Trend
Saint Petersburg, trendrealty.ru
Team Lead

The company is a young fast-growing real estate agency specializing in the primary market (new buildings)

Prior to my arrival, real estate agents used skype and google docs to synchronize information with each other and receive data from developers. Given the rapid growth, this was becoming a bottleneck.

Achievements:

Automated the business process of a real estate sales agency (new buildings):

- Made an internal portal with a personal account of a realtor and the functionality of booking apartments

- Implemented automated setting of recommended prices and automatic selection of an object according to the criteria entered by the realtor

Technology stack: Php, Nginx, Mysql, PostgreSql


Report Page