Episode 157 – Stop Chasing Shiny Things and Learn to Focus on Your Career with Dave Mosher
Phil’s guest on today’s show is Dave Mosher. He has a background in classic design and computer systems technology. Today, he works remotely for Test Double as a Software Developer. Dave has also held this position at Shopify and Pillar Technology. For several years, he ran his own consulting company DAVEMO. He specializes in producing high-performance front-end web architecture and is currently working on getting more deeply involved in coaching and mentoring.
(1.04) – So Dave, can I ask you to expand on that intro and tell us a little bit more about yourself? Dave started his IT career working as a designer. He started out just working with HTML and CSS. At first, he did a lot of desktop publishing work. But, he soon moved on to development, working with databases.
(2.27) – How did you get into Test Double? When did that come about? Dave spent a few years working at a start-up in Saskatoon, Saskatchewan, doing Python app development on Google App Engine. During that time, he grew a lot and learned to wear lots of hats.
That role ended and Dave found himself at a loose end. Around the same time, Kevin Baribeau, a fellow test dabbler, was also under-occupied. He got a job at a consultancy called Pillar Technology. So, Dave applied for a role there too and was hired as a remote consultant.
During much of his time with Pillar Technology he worked directly with the guy who hired him, Justin Searls. He also came across Ted Kaufmann while working there. Within about two years, Justin and Ted left Pillar Technology and set up Test Double. Dave ended up working for them as a consultant and later as a full-time employee.
It was Justin that helped him to learn TDD, how to write tests and introduced him to the realm of Agile software development. Dave says he learned more in the nine months he worked directly with Justin than he had in the previous five years.
(4.53) – Can you please share a unique career tip with the I.T. career audience? Dave’s advice is not to chase technology if you are not happy in your current role. In all likeliness a shiny new piece of technology is not going to solve your problems. If you start chasing after shiny tech it usually ends in disappointment.
Ultimately, technology is not really the source of the challenge you are looking for. Solving people’s problems is what brings job satisfaction. You don’t need to be using the latest technology to do that.
Phil asks if he is saying that you need to avoid the shiny penny syndrome. Dave confirms that is the case. Chasing after the latest tech is a trap that a lot of newcomers fall into. They tend to underestimate the human factors of software development.
At the time, he was refactoring their asset pipeline. It was really slow, taking five minutes to run, so Dave re-tooled it. He did a good job and got the run time down to about 20 seconds.
So, they rushed his enhancement out to production. That was a mistake, a big one. They ended up taking down the whole of Shopify for about 15 minutes. At the time, there were around 80,000 websites running on the platform, so it was a big deal.
This incident taught Dave that if you are making a change to a big platform you need to be especially careful before proceeding. You have to slow things down a bit and vet everything in every possible environment.
It is also important to keep your QA and production environments as closely aligned as possible. At the time, Shopify had not succeeded in doing that. Dave and the people he was working with had been lured into a false sense of security. When the enhancement test went green in the QA environment they, understandably, assumed it would work in production. Unfortunately, that is not what happened.
(11.10) – What was your best career moment? For Dave, that was when he first started working for Double Test. At the time they were working on a contract for a very large firm. Like most large corporations, the work environment was incredibly restrictive and inflexible. They had lots of standards in place and hoops to jump through. It was impossible to work fast because Dave and his colleagues had virtually no autonomy.
But, Dave took the most pleasure from the fact that they had been able to help the team lead they were working with to gain confidence and excel. They invested a lot of time and energy into coaching him and giving him personal encouragement. This included teaching him people skills, for example, how to avoid confrontations and not become defensive. By the end of their time together he was a completely different person. So much so that he actually said “you guys changed my life.”
(13.50) – Can you tell us what excites you about the future of the IT industry and careers? The fact that the barrier to entry has been lowered significantly really excites Dave. Code boot camps are making the field of IT a lot more accessible. In particular those boot camps that have structured their courses so that you do not necessarily have to pay your tuition fees up front.
Dave has also been involved in producing educational resources. He took what he was doing at work and replicated the processes via screencasts so that he could help and educate other people.
It was wildly successful and Dave found that putting together the lessons helped to solidify his knowledge. So, the benefits were twofold. Both parties benefited. He has noticed that a lot more people are starting to do share their knowledge, recently, something he is very pleased to see.
(17.10) – What drew you to a career in IT? Dave drifted into IT through design. But, to get involved in the back end he had to go back to school and complete a Computer Systems Technology diploma. It was the only way he could go from being a starving artist, so to speak, to making some real money.
(17.36) – What is the best career advice you have ever received? That advice came from Justin. He was struggling to convince Dave that test-driven development was the way to go. Dave, like most developers, was used to starting with the code first, then thinking about tests.
Justin knew, from experience, that he was right. But, when Dave did not listen he did not continue to badger him. Instead, he let him go his own way and discover the painful way that he was wrong and Justin was right. Test-driven development did work best.
This experience taught Dave the value of allowing yourself the freedom to fail. He learned how to use his pain as a motivator. He still remembers how going down the wrong path feels, so stops and thinks more before choosing a course of action. Dave is also more inclined to listen to others than he was when he first started his career.
(18.54) – If you were to begin your IT career again, right now, what would you do? Dave says that he would probably spend a lot more time working with relational databases. If you want to specialize, being a database admin, and understanding the nuts and bolts of PostgreSQL or Postgres is a great approach, right now.
He would also get a better handle on data modelling. Developers have a tendency to start without the data. As a result, all too often, they end up painting themselves into a corner pretty quickly.
(19.56) – What are you currently focusing on in your career? Right now, Dave wants to get more involved with mentoring. He wants to have more of an impact on people’s personal lives. Dave is currently figuring who the people in his community are so that he can make himself available to them and help others to level up.
(20.39) – What is the number one non-technical skill that has helped you the most in your IT career? For Dave, that is his musical abilities. He plays piano, drums, bass, and guitar. Dave finds playing to be a good creative outlet and has noticed that there is a lot of crossover between musicality and IT. While playing music, you learn to pick up on patterns and how to improvise. This skill set is useful for IT professionals as well as musicians.
Playing music with others sharpens your ability to spot where they are going and follow them or add to what they are doing. These skills are also useful in the workplace.
(22.18) – Phil asks Dave to share a final piece of career advice with the audience. Dave’s parting piece of advice is – When you feel it’s time to move on, reconsider. Usually, if you are at the end of your rope there will still be something you can do to reframe the engagement in a way that is positive.
Adversity provides you with the chance to rise to the challenge and learn. So, when you are struggling, stop, think and see if you can solve the problem without necessarily changing companies. Only move on when you have considered things carefully and determined there is no way to fix the problem.
(1.45) DAVE – “I was drawn to the web via the power of design.”
(3.05) DAVE – “Don’t chase technology would be my number one career tip.”
(7.08) PHIL – “It’s the right technology for the right solution as opposed to a specific technology.”
(10.45) DAVE – ” Take a little bit more time than you think you need and try to vet all of the things that you’re working on in every environment possible”
(18.33) DAVE – “Allow yourself the freedom to fail.”
(22.23) DAVE – “When you feel like it’s time to move on, reconsider.”