Contact Details

604-764-6155 | derek@derekbarber.ca

Overview

I am an experienced full stack software developer with a focus on web-based applications. Some of the primary programming languages and technologies that I currently work with include Ruby (and web frameworks including Rails and Sinatra), JavaScript (including several frameworks), Node, and Java. While it is not my focus I am also proficient in aspects of front-end development including HTML,
CSS and the complexities around deploying front-end applications.

I am a continual learner, always seeking to improve myself and my craft. I’m not afraid of finding out that I’m wrong and learning a better way to do things. I honestly enjoy programming and the process of bringing ideas and specifications to life. Writing clean code is a passion of mine and so a primary goal is to always write well designed code that is easy to change and also easy to test. I’m an avid user of automated testing tools and generally practice a test-first approach to development.

Technical Skills and Software

Development Setup

OS X, iTerm, Vim, Tmux, Git

Programming and Related Technologies

The following is a general list of some of the primary programming languages and other related technologies that I work with regularly. I am by no means limited to this list but it should give a good idea of my current primary proficiencies.

  • Primary Languages: Ruby, JavaScript, Java
  • Secondary Languages: Elixir, Objective-C, Python, PHP
  • Related Technologies: HTML, CSS, Sass, Haml, Responsive design
  • Frameworks: Rails, Sinatra, Ember, React
  • Testing: Rspec, Capybara
  • Deployment: Capistrano, Gulp
  • Continuous Delivery: Travis, CodeShip

Databases

PostgreSQL, MySQL, Redis, MongoDB

Cloud Computing Services

Amazon EC2, Amazon CloudFront, Amazon S3, Digital Ocean, Rackspace

Network and Server Management

I am an experienced Linux system administrator with a focus on building and setting up servers for the purpose of deploying web applications and databases. My preferred distribution is either Debian or Ubuntu and I have extensive experience with a variety of web and database servers.

Work Experience

Lead with Purpose, Software Developer

April 2015 - Present

Lead with Purpose is a both a strategic planning process and a software application that enables business and individuals to implement the process. I am one of the primary developers on the software platform which is primarily a Ruby on Rails application that also integrations an increasing number of React components for the front-end.

Provide Chat, Co-founder / Software Developer

January 2009 - Present

I designed and built the Provide Chat web-based software using a combination of Ruby, Rails, Node.js and JavaScript (both vanilla JS and React). Includes a web-based administration and chat system, a robust API and JavaScript widgets. Also I worked on building mobile applications which authenticate and communicate through the back-end Rails-powered API.

In addition to my duties as lead software developer, I help to manage the company operations and interact with our customers and partners.

iCan Systems Inc., Senior Software Engineer

January 2008 - August 2016

My primary work with iCan involves building their web technology platforms, specifically Smartsettle One, which is a web application designed for simple, single-issue, two-party negotiations. The application has many use-cases including areas of debt resolution and conflict resolution. I also built the International eNegotiation Exhibition which has seen the involvement of dozens of universities from over 30 different countries.

iCan Systems Inc. is a leader in developing software for the emerging e-Negotiation industry. During my time there I was privileged to work on technology that truly makes a difference in the world. iCan’s vision is “resolving conflict in a more peaceful, collaborative and intelligent way throughout the world”. Our software is based on Game Theory which involves mathematical models for resolving conflict and encouraging cooperation between decision makers.

Dutch eAuction Inc, Senior Software Developer

January 2015 - Present

I was the primary application designer and developer for the Dutch eAuction platform. The platform consists of a front-end web application and back-end API built for running a dutch-style (top-down) online auction. The initial application was built for auctioning motor vehicles and the resulting web app is currently online at auto.dutcheauction.com. The application was built using a combination of Ruby, Rails, JavaScript, along with a host of related web technologies.

Desiring God Ministries, Contractor

September 2013 - July 2014

I worked with a team of programmers and designers on two separate Ruby on Rails applications. I was responsible for implementing a variety of features in these applications. One of the applications was a very large custom CMS which we were re-building in Rails 4 based upon an older version of the application written in Rails 3.

Smartsettle Family Resolutions, Software Developer

September 2014 - December 2014

Designed and built a web application for filling out Form F8, which is a legal document required for child and spousal support court cases. The application was designed with a wizard interface that would make the process much easier to complete through step-by-step, intelligent web forms. At the end of the process a completed PDF could be downloaded and printed out.

Lusora Inc., Software Developer

2004 - 2007

Lusora was a leader in developing embedded health care and elder patient care technology. I was the primary developer of a server platform in Java which was a communications hub for Lusora’s embedded health care devices. The embedded devices would connect to the Java server platform and send status updates and alerts, and the server platform could also send down commands and updates to the embedded devices.

Additionally I also built a Java-based web application that would allow the monitoring and management of these embedded devices.

Calltrex, Software Developer

2002 - 2003

At Calltrex, I was the lead software developer on a team that developed custom web applications for call centres. I managed asterisk PBX servers and build custom web applications that would tie into the asterisk PBX and provide integrated functionality to call centre agents.

Shopping Sherlock, Software Developer

1998 - 2001

Was the lead software developer on a team responsible for developing e-commerce web-based applications. We built several custom online shopping applications initially using Perl and then migrated over to PHP3. One of our goals was to leverage open source technologies as much as possible and so we developed our applications on Linux, Apache, MySQL and other open source technologies.

Education

Bachelor of Technology, Kwantlen Polytechnic University

2010-2011

Diploma in Computer Information Systems, Kwantlen Polytechnic University

1997-1999

Online Profiles