HELLO, MY NAME IS

Ryan Gordon

Android Developer
RyeGordo Technologies

ryan.gordon@ryegordo.com​
About Me

I’m a passionate Software Developer with over 15 years of industry expertise.

Software development is both my profession and my passion.

I’ve been working with the Android SDK since Android 3.0 (Honeycomb, API 11). Android was very different back then, barely recognizable from what it is today.
I lived the entire journey.

I’m in love with Software Development and the Android SDK, perhaps a bit too much as some would say. After a full day of work, I’ll still be in my home office engaged in my personal projects until late into the evening. But my journey didn’t begin with Android.

My introduction to programming was during CEGEP with C++. This is also where I fell in love with field. While C++ remained as my core language, I learned othes such as Assembly, COBOL, and Visual Basic; and then on to university with more C++ but also VHDL, C#, and Java.,

Microcontrollers and Embedded Systems still have a special place in my heart.

A life changing event occurred when I was introduced to the AVR Atmel ATmega.

Before Raspberry PI there was Arduino, and before Arduino there was ATmega, a microcontroller coded in C, powered on a breadboard with integrated circuits, LEDs, sensors, motors, and any type of hardware you could think of. It was a robotics course competition where I gained a strong interest in the ATmega, and I was quick to begin my own personal projects…which continued long after graduation as I entered the workforce on my first job.

My most memorable project would be when I connected a motion sensor to an ATmega16 which interfaced to my doorbell–so when my pet cats came home they would, in essence, be able to ring the doorbell. I named the device Catbell. I would incorporate other features such as a magnetic reed switch that would interrupt the 30-second countdown when the front door opened—so as to not ring the doorbell when non-felines were entering or leaving the house. My creativity moved on to explore WiFi and Bluetooth connectivity where I monitored and controlled the device from a C# desktop application. But then I got the idea to connect Catbell to my mobile phone.

Wouldn’t it be cool if I received a notification on my phone instead of ringing the doorbell?

I began implementing the Catbell Companion App for Android, fell in love with Android, and the rest was history. I moved on from Catbell to other Android projects, but this is where it started, with Android version 3.0; an app communicating with an IoT device before IoT was popularized.

My personal projects are central to how I grow and learn.

Everything I learned in Android is self-taught from trial and error, stackoverflow, and online courses. This fits perfectly for Android as it’s a field that’s always changing.

Android is a field that moves fast! You have to keep learning and adapting to the new changes. We no longer asynchronously load data with loaders which I invested tremendous effort in learning. I mastered RxJava just in time for Google to declare it was time to move onto coroutines and flow. I became an expert in Data Binding only to start all over again with Jetpack Compose.

While I do have more than 10 years professional experience in Android development (prior to this, I spent 5 years as a pure Java developer), an important part of my journey stems from my personal projects where the goal is to grow and learn. Having the freedom and flexibility to code as per my desire allows me to stay on the leading edge of what’s happening in Android; lessons learned that I brought into the workplace and put to practice professionally.  Today, as a senior Android Developer, I’m still engaged in personal projects.

What I Do

The professional and personal activities that keep me up late at night.

Android Development

Software Development

Creative Writing

Skills

 years
Android SDK
 years
Kotlin
 years
Java
 years
Kotlin Coroutines/Flow
 years
RxJava
 years
Jetpack Compose
 years
Data Binding
 years
Dagger/Hilt
 years
Junt4/5
 years
Room
 years
Retrofit
 years
GoogleMaps SDK
 years
Camera2 API / CameraX
 years
ExoPlayer

Publications

Breadcrumbs • Geotag Mapping

An Android app that displays the map locations of your photos and videos on an integrated Google Map. Features an integrated camera to capture photos with location info included as text overlay.

Coming soon to the Google PlayStore.

The Power of Kotlin Delegation

An introduction to Kotlin Delegates and how they can be used to optimize your code.

Mending Fences

A short story about an RCAF pilot on Q-Duty who puts her spirit and training to the ultimate test.
(Written and published before current events.)

Experience

June 2025 – Present

Desjardins

Senior Mobile Developer (Android)

My team is assigned to the Desjardins Mobile Services app where we contribute new features and resolve issues.  As a senior developer, I play a larger role by assisting my tech lead with release integrations, leading technical discussions, and positioning myself as the go-to person called upon to lend assistance to other teammates. I also help manage the team by levelling up our junior developers and to provide mentorship.

Desjardins is my first client as a contractor through my corporation RyeGordo Technologies. 

May 2025 – Present

RyeGordo Technologies

Founder

I founded my corporation with the goal of providing services as a freelance contractor.

January 2025 – June 2025
November 2022 – September 2023

CBC/ Radio Canada

Senior Mobile Developer (Android)

I worked on two separate contracts for their suite of apps including Ici Tou.tv, CBC Gem, Ohdio, and Info. I had the rare occasion of working on apps that targeted phones, tablets, and TVs. I also had a few tasks on Wear OS.

Analytics and privacy consent management were the focus of my second contact. This would also include Kotlin Multi Platform with coding tasks in iOS and JavaScript.

October 2023 – September 2024

Lyft

Senior Mobile Developer (Android)

I was part of the Transit, Bikes, and Scooters segment of the company responsible for a suite of bike sharing apps including CitiBike, Bixi, and Bay Wheels. My work spanned across two different teams with two separate managers and I wore an additional hat to lead the org-wide effort for the application migration to Android 15. In addition to all this, I was assigned as onboarding mentor to a new team member. I conducted formal mentoring sessions from a prepared curriculum of training topics and was their direct support as they became acquainted with our tooling and tech stack.

In addition to Android development, my time at Lyft provided me the opportunity to work as a backend developer in python for our Server Driven UI. A significant portion of the application UI resides in the backend and is pushed to the Android and iOS mobile apps, but the scope of my work went beyond this to include development on microservices and databases.

June 2022 – October 2022

Wise Systems

Senior Mobile Developer (Android)

I was part of an engaging mission which involved route optimization to support last-mile deliveries. I contributed to the Driver mobile app that would receive route and destination info for delivery drivers. In addition to providing functionality for dynamically changing destinations, the mobile apps reported status and progress information to the a web portal managed by the merchant.

I played a major role to improve our software development processes and was a key player in release management. I also assisted our mobile team lead in mentoring junior developers.

October 2018 – May 2022

Genetec

Senior Mobile Developer (Android)

This remains as the highlight of my career where I truly lived the cliché about my work turning into my hobby.

At Genetec, we had the luxury of building a brand new app from scratch. This allowed us to leverage the latest and greatest from Android. It would also be my first time working in a 100% Kotlin codebase. I became acquainted with the MVI architecture and experienced the migration from RxJava to Kotlin Coroutines and Flow. One of my most important contributions was the heavily customized camera integration, originally with Camera2 API, and then later on with CameraX. A mission critical integration of a license plate recognition module would follow giving me the opportunity to revisit my roots as a C++ developer with JNI/NDK.

I played a critical role as Tech Lead for one of our projects that was migrating to a new team. In addition to contributing my knowledge and expertise as subject matter expert, I was charged with onboarding and developing the new developers who were due to take over. I was promoted to Android Software Development Manager in charge of four developers. I gained new co-workers who were also team leads in charge of their own group of developers. Along with my iOS counterpart, I gained more insight into the conception and planning phases of feature development where I had the opportunity to contribute valuable input. It is during this period of time where I discovered my interest for DevOps and pipeline maintenance. There was an org-wide initiative for the integration of Checkmarx, and being the first to achieve this for my team, I had laid out the path for pipeline integration for the other teams to follow.

May 2018 – September 2022

Shopify

Senior Mobile Developer (Android)

Not all stories end on a positive note and my experience at Shopify is one of those times. While it’s difficult to prove anything unlawful about my dismissal from the company, it was definitely unethical and unfair. What I suffered was not the true Shopify experience and should not reflect on the company as a whole. My situation was unique and isolated to the relationship with my manager and his mistreatment towards me.

My forced departure from the company was a blessing in disguise as I would move on to Genetec to enjoy the highlight of my career. I would also gain the mental tools required to rebuild my injured confidence and self-esteem. This would prove essential in helping me remain resilient during my future economic layoffs.

April 2015 – May 2018

Nuglif (La Presse)

Mobile Developer (Android)

I was surprised to learn that I was already at an intermediary level when I decided to transition professionally to Android development. I was deeply involved in my personal projects and my learnings had a significant impact on my ability to make strong contributions to my team. The most notable was introducing them to Android Data Binding which was adopted for a critical for a project I was leading. I would later be invited to conduct a presentation at a Google Developer Group Meetup – one of my teammates was an organizer.

Nuglif is also where I was introduced to Scrum and the agile process. They were the best company for this as they were fully loaded in all the agile practices. In addition to Jira, we also had a physical agile board! They are also not shy about making improvements to processes for the better and are always seeking out ways in which they can improve themselves.

December 2010 – April 2016

Lockheed Martin Canada

Software Developer (Java)

Making entry to the workforce out of university, I was primarily a C++ developer and had interviewed with the company for a C++ development role; there was also the opportunity to learn Java. I was in for a rude surprise when I learned that the codebase was entirely in Java. After the initial panic, I settled down and got to work learning everything I could about Java. It was rough in the beginning, but I survived, and this was a critical experience for me as it laid the foundation for my motivation in committing myself to become a lifelong learner.

I worked on two separate projects with the company. The first was for the Halifax Class Modernization program of the Royal Canadian Navy which involved updating the command and control system of the HALIFAX-class naval frigates. This was primarily in Java with the Swing toolkit for UI and DDS communication between software systems.

An important contribution I made involves a script to automate the testing and monitoring of one of our systems. I was assigned to investigate a problem with a module that sometimes occurred after a four hour period. To streamline the setup, I condensed the manual multi-step process down to a single command allowing me to rapidly kick-off multiple tests instances. I initially ran test instances from my workstation, but expanded this to continue after hours on idle workstations–I returned to the office in four hour shifts to collect the results and re-start. Testing would eventually come to a close and I archived my automation work with instructions on how to set it up for future use. I would find myself in my manager’s office a year later with him congratulating me on the good work I had done. Someone had taken my automation script and expanded on it to become a permanent native test bench for several other naval combat systems.

My second project was for the Visual Simulated Training Application or VISTA. This was essentially building desktop application training simulators to help teach maintainers how to operate and repair issues on naval equipment. This involved travel to various locations in the US where we would document and record the behaviour of the equipment so that we could recreate it in a desktop application. Software development was also performed in Java but includes my very first adventures with dependency injection via Google GUICE and Spring.

Part-Time
December 2020 – October 2023

Clearbridge Mobile

Senior Mobile Developer (Android)

I worked on the YES Networks Sports App for Android TV and the Purolator mobile app. Collaboration was purely remote and this includes direct communications with the client to solicit requirements and to communicate technical issues.

Part-Time
June 2020 – September 2020

Dakia Digital

Mobile Team Lead

I lead the development of a social media and music application. In addition to my primary role as an Androd Developer, I acted a Technical Lead for Android and iOS, mentored and levelled up junior developers, acted as Scrum Master, and lended assistance to my manager as Project Manager.

Get in Touch

Need help with a project? Maybe I can help.

This field is required.
This field is required.
This field is required.