This interview is part of an ongoing series where we talk with a variety of people in the Drupal community about the work they do. Each interview focuses on a particular Drupal role, and asks the individuals about their work, tools they use, and advice for others starting in that role. You can read all of these interviews under this list of Drupal roles posts.
Interested in learning how to become a Drupal themer and front-end developer, too? Check out our role-based learning pathway: Work with Drupal Themes and Front-End.
Kris has been theming Drupal sites and working on the front-end since 2007. He's done a lot of work in the open source world, including being a co-maintainer of Drupal’s Zen theme.
Senior Front-End Developer
Where to find Kris:
How do you define the front-end developer role?
How does being a front-end developer relate to being a Drupal themer and vice versa?
I started out as a Drupal themer, learning how the theming layer worked, and the "Drupal way" to do things. I gradually grew into a front-end developer as the industry's new technologies and information quickly progressed. Drupal has its own challenges, and sometimes an opinionated (and outdated) approach to the front-end, so it’s even more of a challenge unwinding some of that. In a nutshell, the frustrations I encountered in Drupal helped me grow outside of it. Drupal theming to me now is just applying a front-end developer skillset to a CMS. The skills that I attained as a themer give me a needed edge to be able to work faster in Drupal.
What do you currently do for work? What does your daily routine and work process look like? What kind of tasks do you do on a daily basis?
I’m a Senior Front-end Developer at Lullabot, and have been with the company remotely since March of 2013. Each day I set out with particular problems to solve, and generally do a bit of planning (lists!) and research (stackoverflow!) before acting on them. There are also a great deal of communication syncs. If I’m stuck, I’ll generally rubber-duck a concept with a peer—usually through talking, we can hammer out a plan.
Every project has a set of routine processes that were worked out by the client, or by the initial developers early on in the project. The individual tasks are dependent on those factors. Variables can include the ticketing system, versioning system, code review process, tool choices, framework choices, etc.
What do others look to you to do on a project?
Make front-end architectural decisions, complete a good number of assigned tasks for a given sprint, alert PMs when something will take longer than it should, assist others with problems, make things accessible and performant, and write readable code with good documentation.
What would you say is your strongest skill, and how have you honed that skill over the years?
Communication. I’ve always felt that peer and client communication are the most important aspects of problem solving and hitting project goals. Without good communication, entire features could be built out and discarded later because they weren't built as intended, or hadn’t been thought through enough. I honed this skill by failing at it, many times.
How did you get started on this career path?
I started my professional career doing studio and panoramic photography, which led to creating interfaces for clients to display their content in Drupal, and eventually building sites for clients. When I’d had enough of freelance work and lived through a failed business venture, I began working for a university as a Digitization Technician. This was a job that allowed me to couple my skills in technical photography and web development. I generated large amounts of content (scanned and photographed archival material), then assisted with its digital display in a repository that displayed and queried the content using Drupal. Eventually, this progressed to a passion for Drupal theming, and I discovered that front-end development was what I wanted to do for a living.
What is most challenging about being a front-end developer/Drupal themer?
What are your favorite tools and resources to help you do your work?
I frequent api.drupal.org, Stack Overflow, and my peers' hivemind for information and ideas when coding. For a code editor, I use PHPStorm/WebStorm, depending on which editor is more up to date for the current project. For project tools, I most notably use npm, Bower, Grunt, libSass, autoprefixer and SVGStore.
If you were starting out as a front-end developer/Drupal themer all over again, is there anything you would do differently?
What advice do you have for someone just starting out as a front-end developer/Drupal themer?