Looking back to my early Android days, my transition into Mobile development wasn’t easy despite my 10+ years of Software Engineer background. Wondering why, I imagined jumping into a time machine to meet my newbie Android self. What advice would I offer? I came up with three points.

What’s to ❤️ about Android Studio?

Android Studio 4.1.1

I’d first tell myself to embrace Android Studio and say something like this:

Hi Stephen from the past, I’m Stephen from the future. You need to embrace Android Studio. When you start Android Studio for the first time and it welcomes you with…


Like many around the world, the COVID-19 pandemic has pushed my office workspace out of the Manhattan office, out of my Manhattan apartment, and into my parent’s house in suburbia. Today, my workspace is a little different from before.


Photo by Danting Zhu on Unsplash

If there’s one thing that keeps me up at night, it’s the fear of crashes from the ClassPass app tangling with the Android lifecycle. As much as I try to catch issues in advance, the threat of missing something always exists. Building an app on Android can feel like building a house atop ice sheets, while floating down a river.

These days, many in the mobile community point to ReactiveX as the go-to framework to tackle systems that depend on changes from multiple sources. …


This blog post was inspired by an article that DoorDash Engineering posted describing the transition from Callbacks-Style API calls to Rx-Style API calls. In this article, I highlight some of their points as they relate to some of ClassPass’s legacy Android code base.

The ClassPass code base currently follows a pattern where the Presenter component creates and passes a DisposableObserver to the Interactor layer, which in turn passes the callback to the repository layer. (Presenter from MVP Architecture).


How to Design a Simple Android Dice Roller App — Iteration 1

Designing a Android dice roller app for the greatest board game ever: Mansions of Madness!

In this tutorial I describe the steps to build:

This is a non technical summary of steps to build a dice roller app. Checkout the complete tutorial and code on Github

Proposal — The Idea

A little while ago, I got into this board game Mansions of Madness. The game is a bit like the classic Clue where players roam around a house trying to solve a mystery. It’s an awesome game — highly recommended. Anyway, the game uses dice rolls to resolve actions, and game events. Oddly, players…

Stephen Jan

Android Engineer @Classpass xGoogle xNook

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store