These are the questions that can serve as a guide for the interview. You don't have to religiously adhere to them, though, so feel free to skip any or even come up with others you'd like to answer.
The easiest way for me to compose the interviews would be for you to fork this gist, add your name and your answers to the questions (right below each question) and send me the link to your gist.
My name is Alex LaFroscia, and I am a Front-End Infrastructure engineer living in Pittsburgh PA. I have worked on teams using Ember.js since 2012, from big names like Netflix and Google to little start-ups. These days I work remotely full-time for a company called Movable Ink, based in New York City.
I grew up on Long Island, about an hour outside of New York City. I moved to Pittsburgh, Pennsylvania for college and then spent 3 years in the Bay Area. Last year I moved back to Pittsburgh and plan to stay here!
Off of the computer, my interests include cooking and backpacking. Both provide a great way to disconnect from technology and share fun experiences with the people I care about!
My first experience with Ember came from a company called Mysterious Trousers. I was a fan of their iOS apps, which were some of the best on the platform when the App Store first launched. Their apps had this quality about them that was simply delightful and taught me early on about the ways that a focus on user experience can really set software apart. I connected with them around the basis of my interest in iOS development, which transitioned to Ruby on Rails. After pestering the team with enough questions about Rails, they offered me a part-time internship where I could learn it properly.
My role at Mysterious Trousers quickly switched to a focus on building a new front-end application using Ember. The rest, as they say, is history; I fell in love with front-end development and Ember specifically, and that has been my focus ever since!
5. How did reading the Rock & Roll with Ember book help you? Can you recall something that you learned from it?
By the time I read Rock & Roll with Ember, I had been working with the framework for a number of years. We are using it as a training tool at Movable Ink as a way to give a "refresher" to developers that do not work in Ember full-time and as a teaching tool to get people that are new to the framework up to speed. We have even used it to run a weekly book-club where we all went through it a few chapters at a time, ending the week with a discussion of questions we had or things we learned.
One of the things I like best about Rock & Roll with Ember is that it always reflects the "state of the art" of the framework. Our app has been around a lot of years and contains a mix of modern Ember and legacy patterns. I love having the book on-hand as a reference for what is currently the best-practice approach!
During college, while at my second job as an Ember developer, I had the opportunity to be mentored by Taras Mankovski. Taras worked with me in an number of ways, but two particular things stand out to me to this day.
Any time I got stuck on a problem at work, he would pair program with me on it, helping me frame the problem in "the Ember way". This helped a lot with learning about how Ember wants to be used. Developing a sense for how to approach problems using Ember in a way that works with the framework rather than against it is a really important skill to learn early on with the framework.
Additionally, Taras was my bridge into the Open Source community. I worked with him on ember-ajax
and eventually took that project over as the primary maintainer. This really helped build up the confidence to release software that other people would use. Not only did this help me learn about how Ember addons work, but the experience got me comfortable enough to work in public on many other projects in the future.
One area that could be useful to expand into is working with ember-concurrency
. It's such an important part of building Ember apps these days. Understanding when and how it's useful as part of the Rock & Roll book would give new Ember developers a solid foundation for using a tool they will certainly encounter in the wild!
Embroider is the project that has me the most excited right now. Our app is quite large and builds very slowly. My hope is that the new tooling opens up the possibility for faster builds. The new route-based bundle-splitting should also be a great opportunity to ship less code to users. Some parts of our app will really benefit from that.
These days I don't have many side-projects in the coding world, and where I do have time, I tend to invest it into learning other tools or languages. However, I do maintain a number of Ember addons and other packages used in the Ember community. My GitHub profile is littered with different Ember-related projects!
One of my oldest and "favorite" projects is ember-steps
, which I built while working on the Nest Store at Google. It provides a declarative API for defining a Wizard- or tab-like experience, where there are several groups of elements and only only a single group should be visible at a time. I love the level of flexibility that a low-level tool like that provides to developers, who can then build their own experiences on top of a solid groundwork!
Another favorite is qunit-wait-for
, which is not strictly Ember-related but came out of issues I experienced testing Ember applications. It is largely inspired by work that The Frontside did on BigTest and conversations that they had on their podcast about building a robust UI testing framework. This plugin gives you the ability to perform "convergence testing". This approach allows you to automatically re-try an assertion until either it passes or a timeout goes by, after which the assertion fails. This can really help to stabilize flakey tests that are impacted by UI elements that load in lazily or based on user input.
Over the years, my time on open-source work has fluctuated a lot. I have had periods of time where I was doing that every day, but these days I keep programming to work hours. Thankfully my current role allows me to do open-source work as part of my job!
If you want to know about me, my Twitter is probably the best bet. I also have an infrequently-updated tech blog on my website.
If you want to know what I'm working on, follow me on GitHub!