I'm a self-driven Android Engineer with over four years of software development experience; developing and designing apps while keeping UI/UX, software architecture, security, and privacy in mind. I'm fascinated with machine learning and on a mission to build smarter, safer apps.
Skills & Tech
Networking: My go to has always been Retrofit and OKHttp when dealing with REST APIs. I've worked a lot using socket.io on past projects, and absolutely loved it. If there's any image loading involved, then I would tend to favour Picasso although ever since I switched to Glide, I haven't looked back.
Databases: On Android, I mostly work with Realm these days but I did use SQLite (and the extension SQLCipher) with previous projects. Dabbled a bit with Room, however, Realm is my go to. My professional database experience server-side has been with MongoDB.
Architecture: I started out using MVC back in the day like everyone else, but slowly shifted to MVP once I realized it was easier to write tests that way. Still trying to figure out MVVM and late into the ever blissful night you might witness me dabble with MVI. I'm also one of those masochistic people that enjoy building multi-module apps in order to maintain separation of concerns. Yes it means a lot of duplicated Gradle dependencies but I still believe it's worth it, especially in large projects.
Async: RxJava, RxAndroid, RxKotlin, RxAllTheThings...
Version Control: Git using either GitHub or GitLab (most of my work is in private repos). Mostly living in the command line using iTerm but sometimes I launch GitKraken for a pretty GUI.
Tools: macOS running Android Studio and Sketch for mobile design and dev, assets shared on InVison. Pixelmator, sometimes, if I'm ever feeling artsy. Sublime is my go-to editor for everything, although I occasionally run PyCharm for Python. Darcula always.