5 min. 17 sec.|
Mar. 11, 2021
DEVS ANSWER: Michael Chan
We are happy to announce our new series DEVS ANSWER! In this series, we got some of your favorite developers to record their answers to our most pressing questions. How did they get started? What insights do they have to share with the community?
Grab a coffee, and get ready for a lovely chat with today's guest...
Check out the transcript below.
Question one: What’s the best way to stay updated and adapt to new technologies?
Michael: The best way to stay up to date and adapt to new technologies is to learn the principles. Learn the things that are common to all languages and all frameworks and then how those adapt to the framework or language that you're using right now. So things like dependency injection, higher order functions—all of these things are kind of higher level programming concepts but really apply anywhere that you're writing applications.
I think the greatest value that I've ever had is focussing in on those things and knowing that I can take them to any framework, any language and kind of hit the ground running. I learned the syntax that's specific to that specific tool.
Question two: What strengths are most important for a developer?
Michael: I think the most important strength for a developer is patience. So many times people have the right solution at the wrong time. Or maybe they don't have enough information to make the right solution, but they will get that information in like six months time or a year after doing a little bit more research, and when they understand the code base and their customer better. So I think patience is really key in both cases.
When you're ahead of the curve, or behind the curve, just being able to kind of set your goals and the outcomes aside and just continue to do the work… be happy until those light bulb moments go off. When you have everything you need at exactly the right time, you can execute your vision perfectly.
Question three: Remote work: yes or no?
Michael: Remote 100% every time.
I love love love being able to hang out with people but I love the option to choose to hang out with people. I don't like being interrupted when I’m feeling good and I like to be able to step away from a problem if I don't think that I'm able to bring myself 100% to it. So yeah I think I get a lot more of that control over my own life when I am remote. So yeah... remote 100%!
Question four: What’s the biggest mistake you’ve made in your career?
Michael: I'd say the biggest mistake that I've made in my career is not understanding the value structures in place and giving too much of myself in the wrong ways and at the wrong time. I really advise anyone who wants to progress in their career to like define the path up front make sure that it's known what you need to deliver in order to actually get to that step, because— especially if you only have reviews once a year or whatnot—you know the feedback loop is so low, and you think you're doing a really great job and then you get to that meeting. You're like, ‘so I'm good right? I'm moving up’ and they're, like, ‘oh no, you didn't do any of these things that we actually care about’.
So, knowing what the company cares about is so critical and I've wasted so much time, like focussing on the wrong things. I think about it like a glass, right? Like it can only hold so much liquid and if you keep pouring water into it. What is the mechanism for capturing the rest of the water that gets spilled over? If there isn't one, just fill up the glass and move on to your open source, your passion projects, your podcast, like whatever—but like don't keep pouring water in that same freaking glass.
Question five: When did you find out that you wanted to be a developer?
Michael: I decided to be a developer because I needed money. Plain and simple. It wasn't passion. It wasn't excitement. It was just that I needed money. We were coming out of a really bad economic time. I had been laid off. This was like 2010. I had just bought a house. We had our first kid, and I was on unemployment, and I was desperate, and I knew that, no matter what, the tech field was kind of hot. And no matter what, I could take my my photoshop skills and get at least minimum wage or better—-just doing cut ups of, like, psds to html.
So I just decided to go for it. I bought a bunch of books on like you know Ruby on Rails and Objective-C and iPhone development, which was all super hot at the time. And you know it was just through a lot of that learning that I realized I love the web and I love the interactions and the fact that it's always available to anybody. It's very democratized.
And yeah that was the moment that I kind of decided to be a web developer... because it was the easiest way for me to get money.