Matthew Irish is a software engineer of the front-end variety. He’s currently building educational tools and resources for the Salt Lake City-based Instructure. Prior to supplementing our educational system with modern technology Matt put in work at Safari Books Online, Garmin, and local ad shop Salva O’Renick. He’s a smart dude that can become an expert on a new topic faster than anyone I’ve ever met. It’s why I love him. It’s also why I hate him. Let’s see what smartie pants has to share with us.
This is your second gig working remotely. How’s that going for you?
I really can’t say enough good things about working from home. I don’t have a commute, I just get up and go to my basement office. Our family was actually able to sell one or our cars more than a year ago now—that’s been a big money saver. I know others have tried it, but for me it’s been really great and I have a hard time imagining a job (at least if I stay in tech) where I don’t work remotely. Your expereince working remotely depends on two big things: 1) your personality and 2) the company culture.
Some people have a personality where social interactions are better when you’re interacting in the same space—needing to be around people. I like people, but I also really enjoy the added focus that working alone in an office in my basement provides. There’s a drastic difference in the number of distractions when your work area is isolated. Previously I was employed at several places that had open office designs or some level of cubicles and I really feel like those sorts of environments are rife with distraction. When co-workers needed to get work done they would find somewhere away from their desk to do work so that they could have a greater degree of isolation.
Company culture is definitely closely tied to the success of remote workers. Instructure didn’t have a lot of remotes when I started, but the culture was already chat-centric which made it really easy to jump in and feel a part of the flow. Safari had workers all over so it was a closer 1:1 mix of remote to in-office employees which led to over-communicating what we were doing throughout the day. Little details like “I’m off to lunch” are good touchpoints in my experience.
What exactly have you been doing for Instructure over the past year?
One of the awesome things about Canvas is that it’s open source, so you can see exactly what I’ve been working on:
My specialty is front-end work and until a couple of months ago, I was on the assessments team. We dealt with anything related to assignments and grading. Unfortunately I really can’t say much about the work I’m currently doing. That should change soon and I’m looking forward to sharing.
You’re not the type of person to work on something you don’t believe in. What’s the intrinsic hit you get off of digitizing the educational process?
You tried several avenues before finding front-end development. Why did it stick with you?
I’ve always loved learning and development is ever-changing. Being into tech from an early age didn’t hurt, but the big clincher for me was the flexibility of the job.
If I had pursued art conservation, my job would pretty much dictate where I live. I remember expressing my concern to a visiting professor and his response still creeps me out. He said “Well it’s like we always say: where there’s death, there’s hope.” Not exactly the most reassuring answer. After that, both art conservation and medical school (the other avenue I was exploring) required sizable academic and monetary commitments. I decided they weren’t something I wanted to commit to.
Is the gap widening between good front-end people and great ones?
It’s a tricky distinction. Front end stuff is ever-expanding because browsers are getting more powerful and getting packed with more features. But there’s been some commoditization from both the design side and the development side for HTML/CSS-only devs. There are a lot of designers and JS devs who can do HTML/CSS, so it’s becoming harder to stand out.
There’s pressure to learn more advanced CSS techniques like the experimental shape stuff that Adobe is doing and to push harder into JS. If the decision is to push harder into JS, many of the choices for frameworks are fairly complex. The landscape is starting to resemble backend development in complexity. So in that way, the gap is widening.
In many cases you don’t even need a server and can talk directly to 3rd party API’s. A guy on my team recently implemented a CSV upload feature. You drag a file into the browser, and almost immediately get a preview of the CSV in a table format. Then you decide if the file has a header row, and if so, you choose how the headers map to the data we’re expecting. Then you can submit the file to upload to the server and only then does the app talk to the server.
We were all giddy that such a robust interaction could be built in modern browsers. Putting together a team that can envision and then pull off interaction like that is the difficult part.
To me, front-end tools and processes are evolving faster than anything else around it. You agree? And why is that?
What’s your most recent epiphany?
I guess it’s in two parts. First, the modern web has made it difficult for those who use assistive devices such as screen readers. Second, developing and designing for accessibility is not easy but should be a priority. An accessible site should be table stakes at this point.
What’s a lesson you learned the hard way?
It’s not just what you make, it’s about what you spend.