Igor Mandrigin, Fintech Developer in Gothenburg, Sweden
Igor Mandrigin

Fintech Developer in Gothenburg, Sweden

Member since July 15, 2019
Igor is a senior full-stack software developer with over 13 years of experience building mobile apps and mission-critical cloud services with millions of users for clients including Opera and Ethereum Foundation. He has developed apps and services that are primarily used by people in developing countries (Asian, African countries, India, and Indonesia), including work with CJK languages. He uses secure development practices to build fintech services and make them PCI-DSS compliant.
Igor is now available for hire

Portfolio

  • Self-employed
    Design, Protocol Design, Google Cloud Platform (GCP), Docker, Pandas, NumPy...
  • Self-employed
    GNU Make, CircleCI, Google Cloud Platform (GCP), Docker, React, BoltDB...
  • Self-employed
    Metabase, Clojure, Redshift, MongoDB, AWS EC2, Node.js, Go, KaiOS

Experience

Location

Gothenburg, Sweden

Availability

Part-time

Preferred Environment

DataGrip, Microsoft Project, OmniPlan, Pivotal Tracker, Trello, Jira, Go, Android Studio, Xcode, Buildkite, GitLab, CircleCI, GitHub, Discord Bots, Slack, VS Code, Vim Text Editor, Ubuntu, MacOS

The most amazing...

...thing I've architected from scratch is the OPay system that is now one of the top fintech services in Nigeria.

Employment

  • Stateless Ethereum Researcher

    2019 - PRESENT
    Self-employed
    • Created a proof of concept, did extensive testing, and published research on the effects of switching from hexary to binary Patricia-Merkle tries in the current Ethereum implementation.
    • Created a proof of concept, did extensive testing, and published research on different block witness formats for Stateless Ethereum (Merkle multi-proof serialization).
    • Created a stateless Ethereum witness specification proposal that later became the official specification draft by Ethereum Foundation. Coordinated efforts on improving and working on this specification.
    Technologies: Design, Protocol Design, Google Cloud Platform (GCP), Docker, Pandas, NumPy, Ethereum, Go
  • Turbo-Geth Core Contributor

    2019 - PRESENT
    Self-employed
    • Rebased new changes from Go-Ethereum onto our codebase. Kept our codebase up to date with upstream within one or two weeks.
    • Implemented a library for pre-processing blockchain data before inserting it to the database, resulting in up to 40x improvements in the DB insert throughput.
    • Rearchitected staged sync, allowing for the writing of tests for uncommon networking scenarios like blockchain unwinds of different kinds, interruptions from the OS (like SIGKILL), and semi-consistent DB state.
    Technologies: GNU Make, CircleCI, Google Cloud Platform (GCP), Docker, React, BoltDB, Lightning Memory-Mapped Database (LMDB), Ethereum, Go
  • R&D Consultant

    2019 - 2019
    Self-employed
    • Implemented MongoDB autocompletion for Metabase in Clojure.
    • Implemented an ETL pipeline from a production MongoDB cluster to Amazon Redshift, making sure that we aren't transferring any PII or other sensitive information.
    • Profiled and implemented optimizations for a MongoDB cluster, resulting in 99 quantile of some frequent requests to drop from 5 seconds to 0.1 seconds.
    • Helped to debug and fix an issue with DNS cache poisoning of one of the telecom providers in Africa.
    • Did proof of concept, research, project estimations, and risk assessment of supporting KaiOS in the client's app's portfolio.
    • Developed a Kubernetes template to run Grafana and Prometheus in AWS EKS for monitoring metrics for different environments.
    Technologies: Metabase, Clojure, Redshift, MongoDB, AWS EC2, Node.js, Go, KaiOS
  • Core Team Tech Lead

    2018 - 2019
    Status.im
    • Reengineered ClojureScript based rendering of the chat formatting with Objective-C for iOS and Java for Android resulting in 50x performance improvements for long messages.
    • Set up an iterative release process with releases strictly every two weeks, resulting in easier collaboration between Engineering, UX, and Marketing because the release dates were fixed.
    • Handled and facilitated the bug bounty program and worked with external contributors, providing feedback, code reviews, and explanations resulting in 3x higher success rate of contributions.
    • Implemented Android Strongbox and iOS keychain (encrypted by Secure Enclave) support for the "save password" feature.
    • Fixed bugs and contributed to the third-party libraries that Status.im used, including React Native's Android 9 bug fixes, memory corruption in Realm.js, and various improvements to the react-keychain module.
    • Improved the CI system by switching our builds to Fastlane and (for iOS) Codesigning.guide approach.
    Technologies: Ethereum, Instruments, Java, Objective-C, Gomobile, Go, ClojureScript, Fastlane, React Native
  • OPay System Architect

    2017 - 2018
    Opera
    • Implemented an independent system for tracking the outgoing vs. ingoing volume, connected to PagerDuty and a kill switch, and helped catch three misconfigured cashback promotions without losing money.
    • Picked the tech stack and architected, deployed, and delivered the first public version of OPay initiative in time with a team of five people.
    • Scaled OPay to 2,000,000 monthly active users and implemented HA mechanisms and optimizations that helped it to stay healthy during Christmas and Black Friday promotion campaigns.
    • Prepared OPay to successully pass PCI-DSS audit and security audits. Mentored the team about secure development practices.
    • Implemented the E2E test coverage of all happy scenarios in the OPay service, resulting in almost no bugs being found in the main use cases during the first six months of the service being live.
    Technologies: React, Node.js, PCI DSS, PagerDuty, GitLab, AWS ECS, AWS ELB, Go
  • R&D Tech Lead

    2016 - 2017
    Opera
    • Developed news reader apps for iOS and Android for the Indonesian market with a team split between Sweden and China.
    • Released the news reader app to the App Store and Google Play with crash rates of less than 1%. My team and I were supporting them for the first four months.
    • Developed a social login (Twitter, Google, Facebook) for Opera Sync, coordinated to roll it out in three mobile browsers and a desktop browser.
    • Implemented four proofs of concept for other projects and demoed them to the executives. Two of them were approved to build a market-ready version and one was released.
    Technologies: Crashlytics, C++, Rx, Swift, Objective-C
  • Mobile Tech Lead

    2013 - 2016
    Opera
    • Developed the new tabs UI for Opera for iOS using 3D transforms.
    • Designed and implemented a performance monitoring system for mobile browsers on iOS.
    • Improved the startup time of the iOS Opera Mini on iPhone 4S from nine seconds to three seconds.
    Technologies: Crashlytics, Fastlane, Chromium, Objective-C++, Objective-C, Java
  • CTO/Co-founder

    2012 - 2013
    Flexymind
    • Developed a hiring program through free education courses for graduate students. Hired the initial team of three junior engineers for ourselves and recommended six more people to other startups in the same incubator.
    • Mentored the engineering team of junior developers using code reviews, lectures, and direct one-on-one feedback.
    • Together with the team, released three edutainment games for children for Android within one year.
    • Hired the designer/artist team and the art director. Helped coordinate work between them and the engineering team.
    Technologies: Cocos2d, Android SDK, OpenGL ES
  • Test Automation Lead (SIP protocol)

    2011 - 2012
    RingCentral
    • Led and coached a team of three engineers to cover over 1,000 test cases with an SIP/RTP automation framework.
    • Implemented a Python-based test automation framework to write tests for SIP and RTP.
    • Conducted five trainings of the test automation framework for the outsourced teams.
    Technologies: Ubuntu, RTP, Wireshark, SIP, C++, Python
  • Full-stack Developer

    2008 - 2011
    Agnitum
    • Developed a test automation framework for testing Windows applications based on PyWinAuto and VMware vSphere private cloud products.
    • Developed an automated workflow system for Jira that could have conditions. Helped to formalize and automate the whole release process, including steps for QA engineers' acceptance tests, marketing and social media releases, and developers.
    • Developed the back end for a suspicious file analysis system. Optimized storage using deduplication techniques based on the file's hash values. Integrated it with local antimalware tools and VirusTotal. Created a dashboard for malware analysts.
    • Developed an analytics system to funnel and organize download referrers from Agnitum's web store and show them as a dashboard in Jira.
    • Implemented a crawler to find suspicious files on the internet (usually small executable files with names based on some pattern).
    Technologies: C#, Perl, VMware vSphere, Pywinauto, Flask, Tornado, Python, MongoDB, Jira, Jakarta EE, Java
  • C# UI Developer

    2006 - 2008
    A Russian Insurance Company
    • Implemented a reporting system for the insurance CRM based on Microsoft Visual Studio Tools for Office.
    • Implemented the UI for the internal CRM tool, including auto-completion in multiple places that reduced the number of typos in the documents.
    • Implemented an infinite scrolling collection view for Windows Forms.
    • Rewrote some parts of the app in XAML/WPF, improving the render speed by 2x.
    Technologies: LINQ, Subversion (SVN), Visual SourceSafe, Windows Presentation Foundation (WPF), Windows Forms, C#
  • Embedded Developer

    2006 - 2007
    Baltic State Technical University
    • Implemented a USB HID stack for the blood monitor using macro assembler for PIC microcontrollers. That allowed us to connect this device to Windows machines without specific device drivers.
    • Implemented client apps for desktop Windows and Windows CE for the blood monitor.
    • Implemented a USB device driver for Windows Mobile 5.0 using HID protocol for the blood monitor.
    Technologies: Windows CE, Windows Mobile, C++, C#, Assembler

Experience

  • Turbo-Geth
    https://github.com/ledgerwatch/turbo-geth

    A fork of Go-Ethereum, focused on performance improvements. I've been a part of the core team of six people, responsible for both feature development and also taking new versions of Go-Ethereum and rebasing them to our own codebase.

  • Status.im
    https://status.im

    A cross-platform app (Desktop, iOS, Android) written using React Native and Gomobile to share code between platforms. It is a decentralized messenger with Ethereum blockchain node built in. I've been leading the core team, responsible for releases, performance improvements, and the overall stability of the application and its core functionality.

  • OPay payments
    https://operapay.com

    The payment gateway and a utility payment service with its own wallet. I was an architect, ultimately responsible for basically all technical decisions for the first version of this project and the first year of its operations. During that period, OPay reached a daily transaction volume of $1 million according to the investors' call.

Skills

  • Languages

    Go, Objective-C, Swift, Java, Python 2, JavaScript 6, Perl, Clojure, C++14, C++, Python, C#, Assembler
  • Frameworks

    React Native, iOS SDK, Gin-Gonic, ClojureScript, Android SDK, Rx, Cocos2d, Flask, Windows Presentation Foundation (WPF)
  • Tools

    Git, iOS Instruments, AWS ECS, AWS ELB, Fastlane, Jenkins, GNU Make, Amazon EKS, Wireshark, CircleCI, Grafana, Vim Text Editor, VS Code, Slack, GitHub, GitLab, Xcode, Android Studio, Jira, Trello, Pivotal Tracker, OmniPlan, Microsoft Project, DataGrip, Gomobile, Instruments, Crashlytics, VMware vSphere, Visual SourceSafe, Subversion (SVN)
  • Paradigms

    Scrum, Kanban, Kaizen, Test Automation, Parallel Programming, Concurrent Programming, Penetration Testing, ETL
  • Other

    OOP Designs, Cross-functional Team Leadership, Sprint Retrospectives, Browsers, Ethereum Open Source, Threat Modeling, Linux Administration, Open Source, Bug Bounty, Ginkgo, Team Mentoring, Metabase, R&D, Software Development, Software Optimization, Statistics, PCI DSS, libp2p, Theory of Constraints, Fintech, Session Initiation Protocol (SIP), Prometheus, PMI, Early-stage Startups, Discord Bots, Protocol Design, Design, Objective-C++, Chromium, SIP, RTP, Tornado, Lightning Memory-Mapped Database (LMDB), BoltDB
  • Platforms

    Docker, Ethereum, AWS EC2, PagerDuty, Blockchain, Kubernetes, Google Cloud Platform (GCP), KaiOS, MacOS, Ubuntu, Buildkite, Jakarta EE, Windows Mobile, Windows CE
  • Storage

    MongoDB, Redshift
  • Libraries/APIs

    React, NumPy, Pandas, Node.js, OpenGL ES, Pywinauto, Windows Forms, LINQ

Education

  • Master's Degree in Computer Science
    2004 - 2010
    Saint-Petersburg Baltic State University - Saint-Petersburg, Russia

To view more profiles

Join Toptal
Share it with others