I’ve been reading this recent thread on Hacker News with interest. Over the last couple of years (even before being a parent) I gave this a lot of thought and have been asked about how I stay up to date as a software engineer by co-workers quite often. As a software engineer it’s important to keep learning and with learning, I don’t just mean working with a new technology like Docker or React, but also learning about the concepts behind these technologies and what problems they are trying to solve.
How much time you can spend on this really depends on your own situation. I’m a parent of two, with a 4 and a half year old son and a daughter that just turned 2. I love spending time with them and my wife, but I’m also really passionate about work and software engineering in general, so finding a balance is very important.
As you will probably spend a large part of your day time at work, I think it’s important to have an employer that encourages you to spend time to stay up to date and grow yourself. I’m happy to have found this culture at both Luminis and Hippo, so I’m quite blessed in that sense. At Luminis we have our own developer conference and we also have tech days every couple of weeks where the entire team is busy exploring new technologies, sharing experiences and learning new concepts and ideas. Knowledge and skills are a software engineer biggest assets, so standing still is not an option.
Our industry is rapidly evolving and it might not always be easy to keep up with all the changes and newly introduced technologies and practices. In this post, I’ll share some of the ways, sources, and tools I use to stay up to date. It might not be directly applicable to you, but I hope you might find some useful.
Now that I think of it, there is a large variety of sources that I use to stay up to date. Just to name a few:
- Google+
- Meetups
- Blogs
- Weekly mail digests
- Conferences
- Podcasts
- Online videos
I don’t think listing all of them adds any value, so I’ll highlight a few that help me out the most.
Twitter is probably my biggest input stream of interesting content. The Twitter stream is an unlimited source of ideas, opinions, and links to interesting topics. It’s almost instant and the amount of content during a day can be overwhelming. What I’ve learned is that it’s important to be selective in which accounts you follow. So how do you choose who to follow on Twitter?
My advice would be to follow subject experts on topics that interest you. They usually will post their own content or point to interesting content related to the subject at hand. A subject expert can be an individual, but could also be a company or organization. While working at Hippo I used to commute a lot by public transport. Probably at least 2 hours a day, which gave me plenty of time to read up on my twitter stream on the bus or train. These days I commute to work by car, which gives me less time to read up on twitter, so usually when I see an interesting subject I just mark the tweet as a favorite and read it later on during the day or in the evening when I have put the kids to bed and I’m hanging around on the couch.
Need some inspiration? Here is a short list of some of the accounts (sort of categorized) that I follow on twitter.
- Engineering culture and (web) scale problems: LinkedIn Engineering, Spotify Engineering, AirBnB Engineering and Twitter Engineering
- Spring Framework: Josh Long, Phillip Webb, Eugen Paraschiv a.k.a Baeldung, James Watters, Oliver Gierke and Petri Kainulainen
- Global JUG: Simon Maple, Arun Gupta, Chris Richardson and Matt Raible
- Local Dutch JUG: Roy van Rijn, Paul Bakker, Bert Jan Schrijver, Bert Ertman and Sander Mak
- General software engineering: The Practical Dev, Daniel Bryant, Sam Newman, Anna Shipman and Trisha Gee
- Industry thought leaders: Martin Fowler, Jez Humble, Gene Kim and Uncle Bob Martin
- Scalability and architecture: High Scalability, The New Stack and High Ops
This is just a selection of people and by no means a curated list and for a full list of accounts that I follow just take a look at https://twitter.com/jreijn/following
Weekly digests
If Twitter ain’t your thing and the volume is too high, I would recommend subscribing to some high-quality newsletters. I know newsletters usually are the email you trash instantly, but there are definitely some high-quality newsletters out there. I personally highly recommend the following newsletters:
- InfoQ Weekly Newsletter - Topics ranging from Development, Architecture & Design to Culture & Methods. The newsletter contains a lists articles, presentations, and videos, so there is plenty to read and see.
- DevOps.com newsletter - Continuous Delivery, Cloud, Containers.
- Microservice Weekly - Weekly news on all things microservices. Maintained by Daniel Bryantuk
- DevOps Weekly - Blogs, News, Tools, Looked after by Gareth Rushgrove
They help me process new information at my own pace at the time I find suitable.
Meetups
If your work-life balance allows you to, try to attend some local meetups on topics that interest you. Meetup.com is a great way to discover those meetups. I always look for meetups hosting in my surroundings. The Luminis office is in Amsterdam, so I occasionally join some of the meetups there. When I’m not working in Amsterdam I mostly work from The Hague at a client, so I also joined a bunch of meetups in the The Hague area, so that I can attend the meetup after work and skip traffic during peak hours.
Podcasts
A couple of years ago I only used podcasts for music, but now that I commute a lot by car I’ve noticed there are some very high-quality podcasts available. Here is a short list of podcasts I listen to during my daily commutes:
- Cloud Computing Weekly by David Linthicum
- The ArchiTECHt Show by Derrick Harris
- The Thoughtworks podcast
- Software Engineering Daily
- Magpie Talk Show by Sam Newman
- Software Engineering Radio
- Herding Code
Conferences & Online videos
Well, I think a lot of people are already aware that high-quality conferences can help you gain new insights. I usually try to attend at least one conference a year. This year I will definitely be at Luminis DevCon since I’m speaking. The great thing is that most conferences these days make their recordings available afterward and you can almost always find them on either YouTube or Vimeo. I think this is really great because it allows you to cherry pick and watch the videos at the time it’s suitable for you.
Just to name a few of the channel subscriptions I have on YouTube:
Summary
I hope you have a little inspiration now. My advice would be to digest at your own pace. Select topics that interest you or broaden your horizon and try to explore areas out of your comfort zone. Let me know if you have other valuable resources that I really need to see, read or listen too!