The Introvert’s Guide to interviewing with Tech Companies

One of my star students is working his way through the high-level gauntlet: interviewing at Apple, Facebook, Microsoft, Lyft… you name it. Interviews at the highest level are exhaustive and will test you on all aspects of development: CS concepts, platform-specific knowledge, team dynamics, your experience. Not only that but they will happen across hours […]

The Single Responsibility Principle

ParkenDD is an app that shows you parking spots available in different cities in Germany. Take a simple function from their project. There’s an extraneous return in the failure case. Using nil coalescing operators in general is a code smell to me, so most of the success case I’d change. The flatMap should be much […]

On Concurrency

Think of a common task across the iOS ecosystem: a network call. The user launches your app and you want to show them the current weather. The following is a naïve, linear implementation. This code is linear and it’s easy to follow. For example, in order to get to line 25 (the print statement) all […]

On joining a new team and coding as a group

In the Game of Code… As an iOS lead, I had plenty of responsibilities: writing stories, helping design with iOS guidelines, mentoring other devs. However, I always tried to be very aware of code reviews that were submitted by the more junior members. When you start your first job, code reviews may leave the junior […]

Your happiness should not come from your code

It’s exciting to learn One of my best students is going through college. He’s innovative, smart and amazing. However, the opportunities for him are scarce because of a stupid prejudice: being young. I have been mentoring him for two years and he’s gotten full-time jobs while going through college, but very few companies will believe […]

What’s the going rate for an iOS developer?

The Context One of my students came to me and asked me about taking on a contract for a non-trivial app. We’re talking complex navigation, account creation, and animations everywhere. The client was willing to pay a few thousand dollars on the condition that the student sign an NDA and forego taking credit of creating […]