James Boelen

James Boelen

I'm a web applications developer from Toronto, Ontario, Canada. I build highly scalable applications for global audiences. I'm currently working as software enginner for Stripe in San Francisco, helping build and scale their web applications.

Prior to Stripe, I worked for serveral companies including Reflektive, Wattpad and TravelEdge. Reflektive is a real-time feedback and reviews software platform with clients such as Pintrest, Uber, and Ubisoft. Wattpad is a social reading startup with nearly 20 million, highly international, monthly active users. TravelEdge is an enterprise travel agency software company powering over 500M in travel transactions.

Skills

As a web developer, I'm well versed in HTML and CSS, and I'm an expert with javascript. During my time at Reflektive, I was their front end technical lead. When I arrived, they were serving a backbone application via rails and a build pipeline using gulp and sprockets, deployed via Heroku. In addition to my day to day work, I was responsible for staffing the frontend team, improving our best practices and technologies, and managing the other front end developers.

As my first objective, my goal was to shape their best practices and improve coding techniques. From my previous work with Wattpad, I had a strong understanding of how to organize and code with the Backbone framework, so I introduced and taught those techniques to my peers. To improve the resiliency of the code, I started teaching how to write better unit tests for javascript and improved upon the few existing tests. When I left Reflektive, the team had added about 1200 new tests, up from about 10 tests when I arrived.

With some groundwork laid, I moved on to introducing new language features via es6 and a webpack build pipeline. Over the course of a few weeks, I wrote a webpack build configuration that would work for our production, ci, and development environments.

Finally, I integrated with the company's data pipeline using a custom ruby endpoint and jenkins jobs that allowed me to create a dashboard in Datadog. This allowed me to combine real-time usage metrics into one view to keep an eye on how we were performing. These metrics included time to first byte, meaningful paint, and time to interactive.

Wattpad uses Node.js to back their front end tier, and I've spent a lot of time designing and building a workable framework that's easy to maintain, measure, and test. To allow Wattpad to reach the people all around the world, I've helped build an isomorphic application that can be run on our servers to guarantee that our clients always receive what they're looking for, even if they don't support javascript.

To meet the high standards of Wattpad's SLA goals, Datadog and Sumo Logic are used as some of the tools to monitor and check various metrics of performance, and keep an ear to the ground in case there are issues afoot.

Wattpad does a lot of AB testing and experimentation. An internal service helps assign users into buckets and they can then be given varying experiences or features so that their impact can be determined before rolling them out to everyone. For simpler growth tests, they often use Optimizely.

On the platform side of things, Wattpad uses Object Oriented PHP to create a RESTful API that each of the separate clients consume. When needed in a project or feature team, I've contributed to this code and continued to learn and develop my skills in PHP.

For continuous integration, Jenkins automates all of the usability and unit tests written in chai.js. This helps to ensure that all deployments go out smoothly.

At TravelEdge, I built an enterprise application using ASP.Net C# and MSSQL, and supported legacy pages in ColdFusion. The data tier was managed by entity framework, but prior to that they used prepared sql statements. The front end layer used ajax to communicate with the platform via a RESTful API.

Clients used a javascript application built on backbone and jQuery to purchase insurance, cruise, flights, ground tours, and excursions. To allow agents to respond quickly and receive feedback from the system, I architected a comet (long-polling) framework that would inform users of important data regarding sales, inquiries, and status changes.

Interests and Activities

In my downtime I love to go rock climbing and I compete in a weekly axe-throwing league. During the winter months I try to go skiing as often as possible. In the summer I enjoy playing volleyball, hiking, and generally spending as much time as I can outside. I love music and year-round I can often be found at concerts and music festivals. On rainy days you'll probably find me catching up on the latest Doctor Who episodes, playing video games, or editing photos I've taken on hikes.

Hiking in Yosemite Flyboarding Game of Thones

Ask Me Anything

I'd love to hear from you and answer any questions you have. Please feel free to contact me via email.