I have over 25 years experience as a professional programmer, the last seven of which as an Android developer using Kotlin and Java. I currently teach Android and Kotlin bootcamps for Big Nerd Ranch, and also tutor Junior High Schooler all the way up to practicing professional programmers in Kotlin, Java, and Android.
For over 10 years, I taught Johns Hopkins Center for Talented Youth's (CTY) in person computer science course to gifted Junior High School and High School students. I have also been an online Java instructor for the Center for Talented Youth. I put together a little blog of good Java habits for my Java courses here: https://dev.to/mbrubin56/good-habits-for-new-java-programmers-1n2.
I have a Ph.D. in Philosophy, and have taught college level courses in logic and philosophy. I went to Princeton as an undergraduate student and UCLA as a graduate student. You can find my dissertation at https://www.dropbox.com/s/090yxpryf33i166/mark rubin dissertation.pdf?dl=0
I teach Android, Kotlin, and Compose bootcamps.
I teach Android, Kotlin, and Compose bootcamps.
I taught gifted Junior High School and High School students Java.
I taught gifted Junior High School and High School students Java.
I was an Android programmer across a large range of Android applications, supporting consumer phones and Square's custom devices ...
I was an Android programmer across a large range of Android applications, supporting consumer phones and Square's custom devices running forks of AOSP. I was highly valued, and so was asked to lead many projects and products.
When Kotlin became an officially supported Android development language, I switched from Java to Kotlin, so have a lot of experience with both.
A small sampling of projects at Square:
* In 2017, I joined the Terminal Android team at Square, the team responsible for developing and maintaining features for the sorts of customers that generally hand enter in amounts for purchases on the Android Square Point of Sale.
* Based on my success, 6 months after joining, I was asked to become the sole Android engineer for the Business Banking team to enable the team to launch the Square Card, a custom business debit card linked to a Square merchant’s balance. I earned a patent (SQ-1069-US1) along the way.
* Based on my success, I was asked to take a new position on the SDX team, the team responsible for developing the (then, only) custom version of Square’s Point of Sale and other related applications that run on Square’s customs hardware, Terminal and Register.
* After about a year, a Square reorg led me to joining the Appointments team. I designed and effectively wholly implemented the Appointments Point of Sale for Register, as well as serving as the key figure in coordinating all teams across Product, UX, Marketing, QA, hardware acquisition, Android Platform, Analytics, and Engineering Management.
* Finally, at my urging, a new team was founded to help make development on Square's custom hardware mor in line with development for third-party devices. I was chosen as a founding and lead member of that group and greatly renovated the architecture and documentation for developing on these custom devices.
I left Square in 2022 to spend time with my daughter before she went to college.