In my work I try to hit 3 targets simultaneously:
- Program safety (no bugs)
- Speed of development (quick delivery)
- Scalability (high performance + good code structure)
I never settle for mediocrity - that's why I set very high standards on
the app that me and my team are creating. That doesn't mean that my apps
are perfect right from the beginning, but that means that I push hard
everybody and everything to make it perfect eventually.
I prefer functional style of programming, the stack that I'm using is Rust,
Scala, React.js, React Native, Ruby on Rails, Android (Kotlin), iOS
As a CTO of the company I was responsible for building the app architecture (and actually coding the foundation to make sure it's stable and scalable), working out strategic goals with top management, organizing development process, hiring and supporting ico process.
My and my team's achievements:
- Created beta version of the product: full featured e-commerce platform with payments in cryptocurrencies
- Started development of mobile wallets on iOS and Android
- Setup a stack of 10 Rust microservices with Kafka as a message broker
- Organized fully automated CI/CD using Kubernetes and AWS
- Gathered a team of 10 people (with the help of HR recruiter of course)
- Organized biggest Rust meetup in Moscow, held regularly at Storiqa
- Created smart contracts on Ethereum necessary for mass distribution of tokens
- Pioneered smart contract development in Rust for EOS blockchain (https://github.com/StoriqaTeam/eos)
Development stack - Rust, React, Swift, Kotlin, Kubernetes
I had 2 projects on Upwork, on both of them employers estimated my work as 5.0 / 5.0. Their reviews:
- "Exceptional work! Just great all around. Goes above and beyond to help, and thinks strategically about the project goals."
- "Thanks Alexey for the hard work! It is a pleasure working with you."
The projects were:
1. Subspace - a decentralized platform for collective coding (Scala on the backend, React + Relay on the frontend):
- Designed a programming language for writing high-level code for app sketches. This basically included token parser and AST builder.
- Made visualizations in d3.js of code structure, like class hierarchy, program flow and module dependencies
- Organized CI / CD for the project using AWS docker container service (ECS) + Code pipeline + Cloud formation, etc.
- Brought additional hires to the project
2. Orpiva - e-commerce platform with modern features like computer vision (Scala + Ruby on the backend):
- Developed stable service for url shortening service, which is used internally for user convenience and tracking behavioural metrics
- Stabilised existing elasticsearch service (i.e. for gracefully handling network partitions of used microservices)
As a senior member of the team I was responsible for leading consulting projects, developing core company product (https://www.hawaiichee.com/) and was the key person responsible for the hiring activities.
1. Everwise.com - a mentoring platform, founded by eBay top managers:
- The key task for the project was migrating huge codebase from Angular to React, while maintaining it's functionality (meaning that at the time of migration two frameworks lived side-by-side)
- We were hired to implement new v 2.0 interfaces in React (they used Angular)
- Additionally we optimized rails server performance, which occasionally hit 15 secs limit (optimized away all such cases)
3. Spylight - a mobile app in fashion industry
- Developed a React Native cross-platform app for the company
Core project (hawaiichee.com):
- Developed a prototype of the system that was finding the similar listings posted on other listing sites
- The algorithm included scraping a lot of data and using computationally intensive image matching algorithm under high load and therefore was implemented in Rust
- Me and my team finished two projects (started from scratch).
1. Mobile wallet iOS for Sberbank:
- Achieved extraordinary results (by Sberbank standards) - concept app in
1 week, demo app (shown at Shareholders meeting) in 1,5 months, public
beta in 3 months
- Organized process as effective as possible so that developers and me could spend time coding and focus our efforts on things that matter
2. Diary app for iOS and Android:
- There were problems with API, provided by gosuslugi, but we effectively
organized mocks, so it took us couple of days to switch to the real API
when we finally got the access and release the app
- Started as a full stack developer on Ruby on Rails / Angular, but was quickly promoted to CTO.
As a CTO:
- Created Golang server for tracking analytics and deployed Hadoop cluster for storing data
- Organized hiring process for the company
As a fullstack developer:
- Refactored and stabilized substantial part of the Angular app (was somewhat buggy before that)
- Optimized Rails server performance of the key endpoints (approx 5x speedup)
- Preparing portfolio companies for sale: finding potential buyers, negotiations, due diligence assistance, etc.
- Searching new potential targets for acquisitions, due diligence, presentations to Board of Directors, negotiations, etc.
Fund's companies were in the following industries: Retail, Banking, Startups