BLOG

records of a software developer.

VSTS Build Task: GitHub Tag

So you are utilizing Visual Studio Team Services as your build server for direct integration into GitHub, perhaps entirely or perhaps just for your public repo's in GitHub (while your private repo's are in VSTS). In either case, in a...

Read More

Building Custom VSTS Build Tasks

The new VSTS (Visual Studio Team Services - formerly Visual Studio Online) task based build system is absolutely fantastic (also in TFS 2015 on premise). I've been slowly and surely falling in love with it in the realization that is...

Read More

ASP.NET 5 & VS2015 Property Window ERROR

This particular bug has frustrated me for quite some time with ASP.NET 5 projects in Visual Studio 2015: "An error occurred trying to load the project properties window. Close the window and try again. COM object that has been separated...

Read More

SignalR & Forms Auth Expiration

I ran into a problem today with SignalR. That feels weird to say since SignalR always seems to be one library that just works and does exactly what you want. This particular issue specifically revolved around a site that had...

Read More

Angular 2: Some Resources

If you haven’t been living under a rock, then you are well aware that Angular 2 is well on its way forward. While it is in Alpha now and not ready for production use, it is definitely moving ahead fast...

Read More

Visual Studio Unit Test Organization

Visual Studio 2012 introduced first introduced us to the “Test Explorer” that we all use today. I remember the feedback at the time as some were quite upset about  missing their old “Test Results” window from VS2010 and older versions....

Read More

NSubstitute: A Refreshingly Simple Mocking Framework for Unit Tests

I have not worked with a lot of mocking or fakes frameworks. It always seems to be a topic just low enough on my priority list that I think I should probably do that sometime, but then never actually get...

Read More

Can We Really Get Rid of CSS?

The buzz is happening and people are really seriously talking about getting rid of CSS in their web applications. I'm not going lie - I thought the notion was ridiculous when I saw the first headlines. In fact, I initially...

Read More

Build Server Error with Multi-Threading: Access is denied.

  Most recently and in the past I have encountered this error in running build definitions on TFS 2012: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (3540): Unable to copy file "C:\BLD\4\Project\Name\Binaries\BinaryFile.dll". Access to the path ' C:\BLD\4\Project\Name\Binaries\BinaryFile.dll is denied. Which is pretty crazy since, the...

Read More

IE9 CSS Limitations

You always have to worry about supporting some of those legacy browsers. Nothing is worse than pesky ol’ IE. It has gotten better now… a bit. In the latest project I have worked on we are supporting IE9+ and the...

Read More

ABOUT ME

A little about me.
Image

“ I do not fear computers, I fear the lack of them! (Isaac Asimov) ”

Travis is an accomplished Software Developer and Architect specializing in web solutions with extensive experience in the development life cycle and process. Solutions are composed by Travis with a high degree of critical and strategic planning to ensure that security, adaptation, scalability and reusability are not lost. Through the use of the latest technology, solutions are completed with a high degree of professionalism and competence while providing quality.

Name

Travis Gosselin

Twitter

@travisjgosselin

“In all the work you are doing, work the best you can (Colossians 3:23a).”

EMPLOYMENT

My Experience.
SPS Commerce - Software Engineer - January 2016 - Now
Principal Software Engineer, www.spscommerce.com

SPS Commerce offers as SaaS platform for seamless integration and EDI between retailers and suppliers (trading partners). Once on the platform customers can take advantage of products from fulfillment, sourcing, assortment, and analytics. As a Principal Software Engineer on the Analytics development team we build applications to drive the retailer / vendor in category management processes and insight using the latest technology and cloud infrastructure. Day-to-day involves architecturally designing a pluggable analytics framework that allows for client specific customization, that is both scalable and repeatable integrated into Amazon Web Services. Agile processes, automated testing and continuous delivery are essential components to its success.

Pluralsight - Technical Author - September 2013 - Now
Author for Developer Training Courses, www.pluralsight.com

As a slightly new chapter in my career, I took the opportunity to become a published author, and began building hardcore developer training material and videos for the popular "Pluralsight" website. This was a new type of challenge for me that I enjoyed very much, and the Pluralsight author community were very welcoming and helpful.

I continue to work on new material and content as a subject matter expert (Author Profile).

•Development of all aspects of course content including outline, flow, testing material, demos, and presentations.
•Acted as subject matter expert and technology specialist for course design.
•Narrating and editing of all courses.

COURSE RELEASED: ASP.NET Bundling, Minification & Resource Optimization
A complete look into the bundling and minification framework available in the ASP.NET web optimization library. Learn how to efficiently optimize your website resources and assets without comprising the way you want to develop. ASP.NET makes bundling and minification incredibly easy and leaves no reason not to ensure your web application is fully optimized.

ToolBox Solutions - Architect - July 2012 - December 2015
Senior Solutions Architect, www.toolboxsolutions.com

As ToolBox took a more active role in leading the Category Management industry with the revolutionary web software we had been building, I began in the lead role in architecting a re-usable, customize-able and distribute-able Web Reporting Framework for consumption within the companies own multiple development teams. The challenges in this framework were quite different than most, with the development of custom virtual pages, embedded resource dependency manager, and several other deep ASP.NET customization’s to ensure this product would be very easy to distribute and customize. This product would soon become ToolBox’s flagship product, and bring faster data insights to the customer like never before with development times cut in half. This would be the first of a few key innovative products, in which I continue to act as Senior Architect to today.

•Development of re-usable, customize-able, enterprise reporting framework(s)..
•Core feature development in .NET 4.0, 4.5 with C#, SQL Server 2012..
•Use of latest technologies where possible to bring the development and customer experience to a max..
•Administrator for TFS 2008, and migrations through to TFS 2010 and TFS 2012..
•Development of Technology Roadmaps for the dev team(s)..
•Architectural designs from Client side frameworks such as Backbone, AngularJS, Knockout all the way through the Server Data Access Tier including Web Services, Web API, MVC, WCF, and Entity Framework..
•Developed and coordinated integrated development team code reviews..
•Introduced branching and merging strategies in TFS 2012 for supporting multiple active release versions of an application..
•Continued work as apart of the companies Innovation Team for Research & Development..

FRIMP - Developer - January 2009 - August 2013
Contract Developer, www.frimp.me

FRIMP is an online networking and social dating web application designed to be fun through a series of small games. Members create FRIMP games and invite people to play for a chance to win a date with the prize Fringle player. The entire experience is brought to the players through a fun interactive interface that resembles a similar style to existing social networks.

•Lead contract developer for web application architecture, design, and implementation.
•Implementation of highly interactive interface in HTML and JavaScript backed by ASP.NET.
•Heavy JavaScript and single-page application architecture and design patterns.
•Integration with FaceBook Graph API for marketing and socializing.
•Highly service oriented architecture ready to scale horizontally.
•Agile and Kanban style development processes used.

ToolBox Solutions - Developer - May 2009 - July 2012
Senior .NET Developer, www.toolboxsolutions.com

ToolBox Solutions are very good at delivering high-quality analytics that meet any reporting need. Clients like Loblaws, Petro-Canada, Nestle Waters, demanded the highest quality work in the least amount of time. Reporting systems were built quickly and efficiently in a small team scenario, which allowed each team member to be adaptable and step into anyone’s shoes in a moments notice. Precision and performance was also a requirement as some reporting systems involved working with Billion’s of rows of reporting data all driven from a SQL Server architecture.

•Development of corporate reporting system containing billions of records of data.
•Development of core features in .NET 3.5+ and C#.
•Development of enhanced client features developed in JavaScript for maximum client side performance.
•Development and support of Sharepoint sites, and automated installation process.
•Created database architectures and designs in SQL Server 2005 and SQL Server 2008.

Process Driven - Developer - October 2008 - June 2009
Intermediate .NET Developer, www.processdriven.net

Process Driven are experts at building feature rich internet applications which are user friendly and fulfill business needs. They leverage client side scripting toolkits to animate, minimize download times, load features on demand, connect to live data sources, create smarter controls, give better user feedback, and provide a visually compelling user experience.

•Development of corporate reporting system containing a full feature set of exports, customizable parameter selections, and performance tuning for maximum experience.
•Development of core features and enhancements using .NET 3.5 and C#.
•Development of automated application to create specific vendor files on a weekly basis for over 150 different vendor types.
•Customization of vendor Sharepoint sites (programmatic use of WSS 3.0 and Sharepoint 2007).
•Maintained and supported Microsoft Team Foundation Server (TFS) to allow for a secure code in a multi-team environment.
•Created database architectures and designs in SQL Server 2005.

Multiplied Media Corporation - Developer - December 2006 - October 2008
.NET Developer, www.poynt.com

MMC’s core development pertained to building highly scalable local search clients available on instant messaging clients and portable devices. I worked as part of a highly agile team that used the latest Microsoft technologies to support the development of “Poynt”. Responsibilities and contributions to the team included:

•Development of core features and enhancements to the system using .NET 3.0 and C#.
•Development of administration system for deployment with the platform using ASP.NET and AJAX Extensions.
•Consumption of external XML data to provide seamless integration of live data.
•Dynamic virtual mapping technology scripted to allow integration of 3D Maps with live data.
•System made 100% scalable via the use of modules broken down using Windows Communication Foundation.
•Maintained and supported Microsoft Team Foundation Server (TFS) to allow for a secure code in a multi-team environment.
•Upgraded TFS to 2008, and scripted continuous integration tasks, automated builds, and deployments via MSBuild and Microsoft SMS Installer.
•Created database architectures and designs in SQL Server 2005.
•Developed .NET User Group web solution created with ASP.NET and AJAX: www.northoftoronto.net

BT Web Design - Owner / Developer - March 2006 - July 2008
Web Developer, www.btwebdesign.ca

BT Web Design’s core business involved the creation and hosting of small business and personal web solutions. As the core developer of BT Web Design, solutions and architectures were all implemented by myself in a fast paced iterative cycle. Most often sites were developed using open source technologies including PHP, MySQL and JavaScript.

•Responsible for end-to-end iteration with clients of premium web solutions from concept to implementation.
•Maintenance and support of web servers and applications to the client.
•Cost analysis, benefit structure outline, and alternatives provided and evaluated to the client.
•Solutions and architectures implemented using PHP, MySQL, JavaScript, HTML, CSS, XML.

Georgian College - Support - May 2006 - August 2006
Library Commons Navigator, www.georgianc.on.ca

As a Library Commons Navigator I was responsible for handling the first level of tech support at the Georgian College Library. This included many responsibilities from customer care to technical support.

•Support and troubleshooting with wireless network infrastructure.
•Administrative management of Georgian College passwords.
•Application and customer care support to staff and students.
•Rollout of new PC’s to replace existing legacy devices.

Overview

My employment experiences range from consultation and contract development to corporate and enterprise architecture. No matter the the work, I always enjoy the challenge and opportunities that comes with working on new software solutions.

My experience has mostly taken me around the .NET technology world. I have spent a great deal of time architecting, building, and deploying applications in .NET. As such I am very familiar with most related and supporting technologies (ASP.NET, JavaScript, HTML/CSS, WCF, SQL Server, etc). I have done several other technology tours into PHP, MySQL and other open source technologies.

“Many hours of work, thousands of lines of code, a result!”

WORK

Examples of my work.

Customizable Reporting Framework

Platform that was built and designed to be highly customizable for creating report based solutions for medium to large retailers. The framework could be stood up through pure configuration, or could be easily adapted to suit the needs of a client.

See more

Benchmark Auditing

Single page application designed to allow for manual auditing and comparison of planogrammed shelve sets of a retailer. Auditors could easily and quickly identify any issues in a given store, and record that information directly into an automated report.

See more

PowerPoint Presentation Generator

Web based, highly interactive PowerPoint presentation generator that would allow a user to build their corporate overview in minutes, all in front of their eyes (a process that would normally take months).

See more

Ad-hoc Report Tool

A very interactive application that allowed for drag and drop ease in creating a customized ad-hoc report against large sets of data.

See more

Customizable Analytics Dashboard

A completely dynamic and pluggable dashboard for retailer analytics. It is customizable per user and allows export to XLSX, PPTX, PDF.

See more

frimp - Social Dating & Networking

A very UI heavy dating and networking application that allows users to play social dating games and win prizes. Integration with in-game payment system, and added benefit of FaceBook integration.

See more

“Happiness comes when we test our skills towards some meaningful purpose (John Stossel).”

MY SKILLS

What I'm good at.

Software Development

ASP.NET
.NET Framework
HTML / CSS
JavaScript
SQL Server & Database Design

Software Architecture

Enterprise Systems
Single Responsibility & Modularity
Service Oriented
Single Page Application
REST

“The only source of knowledge is experience (Albert Einstein).”

EDUCATION

My academias.

Overview

While formal education backing is important, the life of a software development really requires ongoing education as you continue to grow and learn new technologies and design approaches.

Microsoft Certified Technology Specialist- 2011
TS: Microsoft .NET Framework – Application Development Foundation (Exam #70-536)

•Developing applications that use system types and collections.
•Implementing service processes, threading, and application domains in a .NET Framework application.
•Embedding configuration, diagnostic, management, and installation features into a .NET Framework application.
•Implementing serialization and input/output functionality in a .NET Framework application.
•Improving the security of .NET Framework applications by using the .NET Framework security features.
•Implementing interoperability, reflection, and mailing functionality in a .NET Framework application.
•Implementing globalization, drawing, and text manipulation functionality in a .NET Framework application

www.microsoft.com

Microsoft Certified Professional- 2009
TS: Microsoft .NET Framework 3.5, ASP.NET Application Development (Exam #70-562)

•Configuring and Deploying Web Applications
•Consuming and Creating Server Controls
•Working with Data and Services
•Troubleshooting and Debugging Web Applications
•Targeting Mobile Devices
•Programming Web Applications

www.microsoft.com

Georgian College of Applied Arts and Technology- 2005 - 2008
Computer Programmer / Analyst, CO-OP Program – Advanced 3-Year Diploma

•Graduated top of the class (94% avg. over 3 years).
•Final class included building of a custom web application created in ASP.NET and AJAX driven by SQL Server 2005: www.thorntontigers.ca

www.georgianc.on.ca

St. Joseph Scollard-Hall Catholic Secondary School- 2001 - 2005
Ontario Secondary School Graduation Diploma

•Graduated at university level courses including Physics, Chemistry, Discrete Math and English.
•Received Computer Science Award (3 years in a row) for highest academic merit in computer studies.

“ Think my experience can help you? Contact me anytime!”

CONTACT ME

Do not hesitate!
Captcha Image

Located in Barrie, ON, Canada