We’re honored to welcome Kevin Webber, who joined Typesafe a few weeks ago as a Developer Advocate. Developers, meet Kevin!
Kevin, the friendliest Canadian you’ll meet, was the Play Framework lead for bringing the Typesafe Platform to Walmart Canada. We’re so happy to have him on our team!
Typesafe: Kevin, tell us a bit about what led you to Typesafe. How did you get involved in the Scala/Akka/Play community?
Kevin: I fell in love with Play at first sight. In 2012 I was a Team Lead at Nurun Toronto and we were in the formative stages of designing Walmart Canada’s new eCommerce platform. I had attended a talk at QCon NYC by Sadek Drobi about version 2.0 of the Play Framework. I felt that Play addressed all of the issues common in typical JEE frameworks, especially JEE eCommerce frameworks I was experienced with, so I dove in and began building up proof-of-concept applications to demo at work.
I had explored Scala back in 2010 while I was a developer at the Bank of Montreal, and still had my copy of the wonderful “Programming Scala: Tackle Multi-core Complexity on the JVM” by Venkat Subramaniam on my bookshelf. I brushed up on Scala and really dove into Play, finding the combination to be exactly what I was looking for; the values, case classes, pattern matching, first-class functions, and the ability to leverage my existing OO/Java/JVM expertise with Scala, combined with the rapid developer productivity of Play for building modern web applications. Not only did I work with Typesafe technologies as a developer, but also as a team lead. The caliber of candidates we interviewed at Nurun shot up significantly after introducing Scala to the organization which goes to show that Scala can be a real boost to hiring top-tier developers.
After over a year of design and development, my team successfully implemented walmart.ca with Scala, Play, and Akka. When the project wrapped up I began to blog more actively about my experiences with Typesafe Reactive Platform, which lead me to connect with a number of people in the community and people working at Typesafe. The rest is history! I’m absolutely thrilled to be a part of such a wonderful team who are doing amazing things in computing.
Typesafe: We’re thrilled to have YOU on board! So, what Play Framework feature are you most excited about?
Kevin: sbt-web! Now it’s trivial to build out a fully-formed asset pipeline without having to roll your own. This new feature will be a real benefit to both devs and devops, the folks responsible for deployments to production and production-like environments. At first blush it may sound like a minor enhancement, but it will be a real benefit for teams who leverage CDNs, like Akamai, and have to worry about static asset fingerprinting and cache busting.
I’m also very excited about Actor WebSockets in Play 2.3. I’ve built WebSocket apps in the past with Netty, and I love how easy it is in comparison to build these types of apps now with Play and Akka. Having such a high degree of productivity with Play, along with the ease of scaling-out with Akka, points towards some very exciting potential use cases. I’m immediately thinking of specific problems in the finance industry, like a foreign exchange system that needs to display an updated “spot rate” to many clients multiple times per second while also locking down rates for a trade. Implementing these types of apps was quite complicated only a few years ago, but now it’s becoming trivial with new Play features like this.
Typesafe: Great! What initiatives will you be involved with now that you’ve joined Typesafe?
Kevin: My role as Developer Advocate means a lot of different things to me. Having a chance to work alongside the folks who build the tools that I’ve used and been passionate about for years is an incredible experience. I’m also very excited to bring my industry perspective to the table. When I think “Developer Advocate”, the first thing that comes to mind is being a voice for the community, not just a voice to the community; it’s an important distinction to me. The title of Developer Advocate itself is actually a little misleading and if it weren’t so awkward I’d change my title to “Developer, Ops, DevOps, QA, and Manager Advocate, plus Systems Analyst, Technical Publications Writer, and Short Film Director.” While it would make for an awesome Spring Bean name, it probably won’t fit on a business card so we’ll stick with Developer Advocate. That said, one of my goals is to connect with people in the community who have a stake in delivering applications, whether it be at meetups or through blogging and screencasts, or whether that person be a developer or an ops team member or project manager.
I’ve been head down on project work for a long time, so my immediate goal is to get out into the developer community as much as possible to learn how other practitioners are using Typesafe technologies. I’m also very excited to be working alongside Dick Wall on community initiatives!
Also, I’ve been “in the trenches” so to speak, stuck on a problem for hours in the middle of the night. I fully appreciate how helpful a great article or video can be for a person to needs help in a pinch to get something done. With that in mind I plan on working on a lot of new blog and video content over the summer. The content will be aimed not only at experienced developers, but also people who are new to Scala, Play, and Akka. Also there will be content for developers who want to use Play and Akka, but want to develop in Java.
Thanks so much Kevin! Read Kevin’s blog on Transitioning to Scala to learn more about his previous project.