I’ve been doing more training, teaching, and documentation projects recently, and it’s been a lot of fun. In July, I led a three week on-site summer technical leadership program for new college hires. The training focused on Amazon Web Services, building APIs as microservices (and deploying them), relational and NoSQL databases, and test-driven development with Java.

I’ve given the AWS, building APIs, and databases training as a two-day class now to motivated students, and it’s been really fun – I’m constantly learning new things as I go when it comes to teaching the material. Not necessarily on the subject material, but on the questions the students ask, and more importantly, where they get stuck.

This wouldn’t be as effective if I wasn’t taking on these types of projects already, so I am continuing to do software development as well. Otherwise, I could easily end up with stagnated skills, teaching say, Objective-C, until the demand for that type of thing goes away. Instead, by taking on projects using Swift for iOS development, it backs up my ability to teach a class that uses Swift.