← Back to list
Senior
Registration: 09.01.2023

Oleg Kabanov

Specialization: Backend Developer
Master of Computer Science degree, 28 years of hands-on software development experience and knowledge of wide range of technologies: C/C++, .NET/C#, SQL, PHP, AWS, Docker/Kibernetis, HTML/CSS/JavaScript, Objective-C/Swift, Kotlin, Java, etc. Prestigious and valuable status “Microsoft Certified Solution Developer” awarded two times: in 1999 (“MCSD”) and 2004 (“MCSD for .NET”). Key participant in a number of software development projects of different sizes, complexity and areas (aviation, banking, real-estate, finances, recruiting, etc). Personally designed, developed and published over 50 (fifty) my own apps for iOS and Mac OS X under the name of my company “TopLineSoft Systems” (100% ownership). Completed several complex iOS/MacOS/tvOS projects for other companies on top of my own app portfolio. The list of all created apps covers wide range of categories: Games, Utilities, Photo, Business, Shopping, Financial, Productivity, Social Networks. My most popular app “Block Touch” was downloaded approx. 2M times and reached as high as 40-th position in U.S. top 100 game apps list in 2009. There are also many other apps that appeared in top list.
Master of Computer Science degree, 28 years of hands-on software development experience and knowledge of wide range of technologies: C/C++, .NET/C#, SQL, PHP, AWS, Docker/Kibernetis, HTML/CSS/JavaScript, Objective-C/Swift, Kotlin, Java, etc. Prestigious and valuable status “Microsoft Certified Solution Developer” awarded two times: in 1999 (“MCSD”) and 2004 (“MCSD for .NET”). Key participant in a number of software development projects of different sizes, complexity and areas (aviation, banking, real-estate, finances, recruiting, etc). Personally designed, developed and published over 50 (fifty) my own apps for iOS and Mac OS X under the name of my company “TopLineSoft Systems” (100% ownership). Completed several complex iOS/MacOS/tvOS projects for other companies on top of my own app portfolio. The list of all created apps covers wide range of categories: Games, Utilities, Photo, Business, Shopping, Financial, Productivity, Social Networks. My most popular app “Block Touch” was downloaded approx. 2M times and reached as high as 40-th position in U.S. top 100 game apps list in 2009. There are also many other apps that appeared in top list.

Portfolio

AeroInfo/Boeing

I was a senior member of the iOS team at AeroInfo, a subsidiary of Boeing in Canada, where we developed an iPad application for pilots called ecoAFP. The app was designed to wirelessly collect onboard signals related to fuel consumption during flight, creating detailed charts of different parameters overlaid with a chart of fuel consumption, allowing pilots to learn the best strategies to optimize fuel savings. We used a third-party iOS chart component from a company called Shinobi, but due to their limited resources, we faced many issues trying to integrate it into our app. This caused delays in the project schedule. Despite spending several months trying to resolve the issues, even direct collaboration with Shinobi's developers couldn't fix the problem. Since we did not have access to the component's source code, we couldn't solve the issues without Shinobi's help. I proposed to re-implement the Shinobi chart component in-house, using my expertise in high-performance iOS graphics (OpenGL) that I gained from developing games before joining AeroInfo. I successfully reproduced the features from Shinobi component we needed and integrated them into our product. As a result, we finally got the project moving forward with a charting component under full company control and with access to the source code. This allowed us to complete the app to the original specifications without needing to twist existing third-party component's features to make them fit our requirements.

LiveSwitch (Surrey, BC)

As a senior software developer at LiveSwitch, I was responsible for creating and maintaining a number of backend .NET microservices using C#. One of my first tasks was addressing stability issues with the recording service, which was frequently encountering corrupt recording metadata files. To quickly resolve the issue and address customer complaints, I implemented a solution that was automatically analyzing and fixing corrupt files as they arrive to recording service. This allowed us to resolve the immediate concern, giving us time to investigate the root cause of why recording metadata files were created as corrupt. Another project I worked on was improving the efficiency of the event service, which tracks video streaming activity and bills customers accordingly. LiveSwitch was using Google's "BigQuery" service to store and access large amounts of events, incurring significant costs of Google billing for BigQuery usage. To decrease Google storage costs and increase LiveSwitch profitability, I proposed and implemented a solution to offload and aggregate data to general-purpose cloud servers that were significantly cheaper than dedicated big data storage from Google. Additionally, I discovered an alternative and significantly cheaper method of using the Google BigQuery API, further reducing costs. As a result of these efforts, LiveSwitch was able to dramatically decrease costs and improve profitability.

DirecTV/AT&T

I was part of a team developing streaming clients for NFL games on different programmable TV platforms for DirecTV, a subsidiary of AT&T. When I joined the team, it was shortly after Apple conference where it was announced that the Apple TV platform would now open up to custom-built apps. This presented an opportunity for DirecTV to develop an app called "NFL Sunday Ticket" for AppleTV, so we had to start the development from scratch. In the spring, management thought it would be unlikely that we could finish the app before the start of the next NFL season in the fall of the same year. They believed the app would be available to customers during the next year NFL season only. However, our team exceeded expectations by completing the app in time for the fall of that same year, opening up new NFL income stream of Apple TV subscriptions for DirecTV one year earlier than expected. Additionally, we were able to finish the project with extra time left, allowing for two more UI redesign iterations, making the final app have a polished and beautiful UI that received many compliments from senior management. There were many challenges in this project, particularly with the Apple TV video streaming component, which had very limited customization options. We had to be very creative in figuring out how to make the component work according to specifications.

Top Producer Systems/Move

I joined Top Producer Systems (a former subsidiary of Move) during a crucial time for the company as it was in a process of planning a transition from selling boxed software for real estate agents and brokers to a fully online, subscription-based system. I played an active role in all three stages of this transition. The first stage involved the release of the final version of the original software to ensure that the company could continue to offer a competitive product while transitioning to an online system. This was an essential step as it gave me extensive knowledge of the domain-specific features of the software that had been in the market for a while. I used this knowledge in the following stages of the transition. The second stage involved developing a transitory project that kept the Windows forms user interface the same but connected the application to online databases. This was a custom project for the real estate branch of the Cendant corporation. By adding online support to the existing offline product, we were able to synchronize data between the local application and Cendant's large, cloud-based real estate system. To accomplish this, we had to understand the API interface and internal data structure of the Cendant system. The project was successfully completed. The third stage involved designing a fully cloud-based online system from scratch. I played a key role in designing the database structure for the lead subsystem and was the key developer for the lead reporting subsystem. This included designing an OLAP database and developing an ETL tool to load and aggregate data from the transactional lead database. The transition was successful, and the company fully switched to an online real estate system offering.

Netgear/Arlo (Richmond, BC)

As a senior member of the iOS client team at Arlo, a company that offers Smart Home devices such as wireless cameras and doorbells, I played a key role in the development of the groundbreaking new product, the Arlo Pro3 Floodlight. The camera provides a very bright LED floodlight powered by a battery with a minimal impact on battery life. With a strict deadline to implement new product support across all software components, including firmware, backend, and three clients (web, Android, and iOS), it was essential that we work quickly to ensure that the software was ready in time to be loaded into the first batch of cameras shipped from Taiwan. My responsibility was to add Arlo Pro3 support to the iOS client. I participated in weekly integration meetings hosting representatives of all software components to discuss completed work and plan next steps, and War Room cross-component debugging sessions to troubleshoot problems. Despite the challenges of coordinating multiple teams, we were able to successfully complete software support for the Arlo Pro3 on schedule and without any delays.

Skills

PHP
Java
Javascript
iOS
Swift
C#
.NET
Android
Kotlin
SQL
MS-SQL
T-SQL
MySQL
PostreSQL
Database Design
Performance Tuning
SQL Query Optimization
Backend Architectures
Mobile Development
AWS
AWS DynamoDB
AWS CloudWatch
AWS SQS
RabbitMQ
HTML5
CSS3
Docker
Kibernetis
ASP.NET
ADO.NET
OpenGL
Game Development
Google BigQuery
Objective-C
Web services
Microservices
Backend Development
Database Development
Redis
.NET/C#
C/C++

Work experience

Software Developer II
12.2021 - 12.2022 |Amazon (Vancouver, BC)
Microservices, Java, AWS CloudWatch, AWS S3, AWS SNS, AWS SQS, AWS DynamoDB
• Member of the Alexa Security Guard backend microservices team. • Development and support of EventListener and other related microservices. • Metrics and alarm support/analysis. • Performance and latency analysis. • Internal Atocha logs analysis. • AWS CloudWatch, S3, SNS, SQS and DynamoDB services. • Design of the new 24/7 Smoke & CO alarm feature.
Senior Software Developer
06.2020 - 09.2021 |LiveSwitch (Surrey, BC)
Microservices, C#/NET, AWS, PostreSQL, RabbitMQ, Redis, Google BigQuery, iOS/Android
• Member of the backend microservices team. • Development, support and extension of a Recording, Billing and other microservices. • Design and development of the new Event microservice. • Optimization of the BigQuery data retrieval – achieved 150x decrease of data retrieval cost. • Fixing critical issues in mobile SDKs (iOS/Android).
Senior Software Developer
02.2018 - 06.2020 |Netgear/Arlo (Richmond, BC)
iOS, Objective-C, Swift
• Key developer of the functionality for Lights • Developer of the onboarding flow for Chime and Doorbell. • Participated in development of new generation of the user interface – UX 3.0 • Product lead for HomeKit integration project. • Product lead for “Owl” project (camera with high-power lights).
Personal Projects
08.2017 - 02.2018 |TopLineSoft Systems (Self-Employed , Vancouver, BC)
iOS, Swift, Android, Kotlin
• Created “Windows for iPad” – File manager with desktop interface for iPad (the app was not published in App Store due to the Apple rules). Video: https://youtu.be/Wwf1TZEbFGE • Created “Windows for Android” – File manager with desktop interface for Android tablets. The app is published in Goolge Play. Video: https://youtu.be/c3RcmsBgEEk
Senior Software Engineer
03.2016 - 08.2017 |DirecTV (Contract, Los Angeles, CA)
AppleTV SDK, Swift
• Key participant of the new AppleTV project “NFL Sunday Ticket”.
Personal Projects
11.2015 - 03.2016 |TopLineSoft Systems (Self-Employed, Vancouver, BC)
iOS, Swift, PHP, MySQL
• Created, deployed and published Social Network “Past Meet”.
Software Developer
06.2015 - 11.2015 |Dynamic Leap (Contract, Vancouver, BC)
MacOS, Swift
• Development and successful completion of Mac OS X app “ShotLister” for movie producers.
Owner/Developer
04.2015 - 06.2015 |TopLineSoft Systems (Self-Employed, Vancouver, BC)
iOS, Swift, PHP, MySQL
• Created, deployed and published Social Network for shoppers “Zetware”.
Senior Software Developer
09.2013 - 04.2015 |AeroInfo (Contract, Vancouver, BC)
iOS, Objective-C, OpenGL
• The sole developer of the research iOS fuel profiler project “ecoAFP“ from beginning to the end. • Consulting, mentoring and documenting algorithms and design solutions implemented in the project “ecoAFP“. • Development of the next version of ecoAFP called “RPM“.
Software Developer
05.2013 - 08.2013 |Absolute Software (Contract, Vancouver, BC)
iOS, Objective-C
• Implemented a number of features for Absolute Computrace Agent iOS app.
Software Developer
10.2012 - 05.2013 |Oltis Software LLC (Contract, Bellevue, WA)
iOS, Objective-C
• Implemented iPhone financial Calculator app “Finance Logix”. • Created several customizations for the app “Finance Logix”. • Added full iPad support to the app “Finance Logix”.
Software Developer
06.2012 - 10.2012 |Disternet (Contract, Vancouver, BC)
iOS, Objective-C
• Developed iOS app for TV box control and content streaming to/from mobile device.
Personal Projects
03.2010 - 06.2012 |TopLineSoft Systems (Self-Employed, Vancouver, BC)
iOS, MacOS, Objective-C
• Designed, developed and released 24(twenty-four) software products for iPhone/iPad, one Mac OS X app.
Software Developer
11.2009 - 03.2010 |Attollo Consulting Inc (Contract, Vancouver, BC)
C#/.NET, MS SQL Server, JavaScript, HTML, SMTP, ASP 2.0
• Participated in design and developed customization of the Self-Service system for college “Keyano” to interact with centralized educational portal of the province Alberta, Canada. • Developed technical documentation and trained stuff in regard of the implemented solution. • The project was completed on time before deadline passed and therefore, college “Keyano” was able to get online as planned and reported to the Ministry of Education its readiness to get application online.
Personal Projects
11.2008 - 10.2009 |TopLineSoft Systems (Self-Employed, Vancouver, BC)
iOS, Objective-C
• Designed, developed and released 9(nine) iOS apps.
Software Developer
03.2008 - 05.2008 |Microsoft (Contract, Redmond, WA)
Mobile Windows 7, C++, C#/.NET
• Implemented new features for managed wrapper of Mobile Windows 7 shell controls. • Created unit-tests for managed wrapper of Mobile Windows 7 shell controls.
Software Developer
11.2006 - 10.2007 |Microsoft (Contract, Redmond, WA)
Web services, C#/.NET, Microsoft SQL Server, Javascript.
• Implemented a number of build process improvements (synchronization of multi-processor build, proper component versioning, automatic compliance checks etc) • Implemented a number of features for Global Business Intelligence components • Created and changed stored procedures, database tables, constraints and SQL job packages for database layer of Global Business Intelligence service with extensive usage of MS SQL 2005 OLAP Services. • Created technical specifications for Outlook integration and data import for Account Planning application. • Implemented Outlook integration functionality, data import utility, Excel reporting functionality, UI forms, middle tier business logic components and database objects for Account Planning application .
Software Developer
11.2004 - 10.2006 |Business Objects (Vancouver, BC)
C#/NET, C++, Java, XML, Web services
• Developed document publishing Web-service (Java) and Java/C# client parts of web-service. • Ported Java Unit-test framework to C#. • Implemented numerous new features for C#, C++. • Developed proposals and POC for using attributes/annotations instead of separate XML files. • Ported backend into new build system targeting Windows, Linux and Solaris (GMake, C++). • Developed Smart Server functionality (Java).
Software Developer
10.2003 - 11.2004 |HireDesk Inc. (Richmond, BC)
Visual Basic, Javascript, HTML
• Developed conceptual search and Outlook e-mail integration functionality.
Software Developer
12.1999 - 10.2003 |Top Producer Systems (Richmond, BC)
Web services, Visual Basic, MS SQL Server, COM+, XML, MSMQ, C/C++, Code Warrior
• Participated and contributed to high-level technical discussions regarding large integration project. • Supervised and mentored a small group of software developers . • Contributed and was one of the key driver of architecture and design of real-estate broker subsystem. • Contributed to the Internet-based real estate productivity system in three-tier architecture using MS SQL Server 2000 and COM+ components. • Performed data/system analysis and designed data exchange specifications for integration of two real-estate systems via XML data exchange • Designed and implemented development framework, implemented a set of support utility programs, database tables/stored procedures (SQL Server 2000) and business logic layer components (COM+, MS Visual Basic 6.0, MS Visual C++ 6.0) for customization of the real-estate system and its integration using third party system via XML data exchange and MSMQ. • Implemented OLAP data loading (ETL) and OLAP reporting functionality for real-estate system (MS SQL Server 2000, MS Visual Basic 6.0, COM+). • Implemented Web capabilities, data exchange mechanism and functionality for system integration between Windows desktop and third-party system using ActiveX components for Web integration and HTML for data exchange (MS Visual Basic 6.0). • Implemented data synchronization log file viewer, color support and color setting functionality for Palm OS (C/C++, Code Warrior).
Senior Software Developer
12.1998 - 11.1999 |Corvus International (Moscow, Russia)
PL/SQL,C++,Pascal,IBM AIX,Sun OS
• Developed support functionality for Oracle client-server banking system (C++, Pascal). • Designed and implemented system integration/data migration from two different legacy banking systems (PL/SQL,C++,Pascal,IBM AIX,Sun OS).
Software Developer
10.1998 - 12.1998 |Biblio-Globus (Moscow, Russia)
ASP, Visual Basic, MS SQL Server
• Developed Intranet book order system for the bookstore.
System Analyst
10.1997 - 09.1998 |Bank “MENATEP” (Moscow, Russia)
C++
• Participated in development of the three-tier banking system in one of the largest banks of Russia. • Performed business and system analysis for banking product. • Implemented client part of tax accounts banking product (C++). • Designed and implemented data conversion and system migration from legacy banking application (C++).
Lead Software Developer
06.1995 - 10.1997 |R-Style Software Lab (Moscow, Russia)
C/C++
• Founded new product line of stock banking products for client-server integrated banking system. • Managed up to five software developers. • Contributed to establishing QA and documentation department and mentored first members of these departments. • Closely interacted with customers regarding specific products. • Completed business and system analysis of securities accounting services. • Designed and implemented depository and bonds accounting product (C/C++). • Designed and implemented an integrated securities accounting system (C/C++).
Software Developer
02.1994 - 04.1995 |TTD (Moscow, Russia)
C++, DBVista
• Developed first version of Depository application • Headed and participated in development of second version of Depository application (C++, DBVista).

Educational background

Computer Engineering (Masters Degree)
1988 - 1994
Moscow Institute of Radio Engineering, Electronics and Automation

Languages

EnglishProficientRussianNative