David Pring, Developer in Toronto, ON, Canada
David is available for hire
Hire David

David Pring

Verified Expert  in Engineering

Full-stack Web Developer

Location
Toronto, ON, Canada
Toptal Member Since
September 8, 2021

David is a software developer with 20+ years of experience, specializing in full-stack web development for Microsoft platforms. He excels when working with clients who share his desire to push the envelope on performance and customer satisfaction in web-development projects. David continuously advances his skills and gains new ones while working as a full-time or freelance developer.

Portfolio

Cirruslabs
.NET Core, Angular, xUnit, Azure, Docker, Azure DevOps, HTML5, CSS3, MongoDB...
The Product Stages Group (Self-employed)
PHP, MySQL, Linux, HTML5, CSS3, JavaScript, C#, Selenium, Git
Distributel
C#, .NET Core, T-SQL (Transact-SQL), Microsoft SQL Server, Azure, HTML5, CSS3...

Experience

Availability

Part-time

Preferred Environment

Windows, Visual Studio, Visual Studio Code (VS Code), Git, Azure DevOps, Jira

The most amazing...

...thing I've developed was a virtual, infinite scroll UI table that was customizable, such as resizable columns, and, of course, highly performant.

Work Experience

.NET Developer

2020 - 2021
Cirruslabs
  • Developed automation and productivity RESTful APIs using the latest C# .NET Core, following SOLID principles, and backed by xUnit tests. One of the APIs was backed by a MongoDB database.
  • Developed the front-end UI for one of the APIs using Angular and reactive forms.
  • Created a custom CI/CD pipeline running on Azure DevOps that would trigger the entire build and release cycle when merging into either the release or master branches.
  • Conducted interviews on behalf of clients of CirrusLabs, which required me to tailor interview questions based on the job descriptions and number of years of experience required.
  • Mentored fellow team members in the use of company tools such as Visual Studio Code and GitLab.
Technologies: .NET Core, Angular, xUnit, Azure, Docker, Azure DevOps, HTML5, CSS3, MongoDB, C#, TypeScript, Git, Visual Studio Code (VS Code), GitLab, CI/CD Pipelines, REST APIs

Software Engineer

2020 - 2020
The Product Stages Group (Self-employed)
  • Designed, architected, and developed ProductStages.com from the ground up on a Linux-based platform using JavaScript for the front end and PHP for the back end.
  • Created a code-independent, Selenium-based testing framework in C# for testing websites across different browsers.
  • Performed set-up tasks such as SSL certificate acquisition and installation.
  • Designed and created the UI/UX for the website, including all the graphical content appearing on the site.
  • Created technical guides and promotional materials for the website.
Technologies: PHP, MySQL, Linux, HTML5, CSS3, JavaScript, C#, Selenium, Git

Senior Software Developer

2019 - 2020
Distributel
  • Created an API to provide customer information to Distributel's ticketing system.
  • Added several new features to a resource management suite that was heavily relied upon by Distributel agents.
  • Implemented an end-to-end testing suite written in Selenium.
  • Periodically performed a business analyst role by familiarizing myself with the business and anticipating user requirements.
  • Performed after-hours deployments for critical systems so as not to disrupt customers.
Technologies: C#, .NET Core, T-SQL (Transact-SQL), Microsoft SQL Server, Azure, HTML5, CSS3, JavaScript, Git

Senior Software Engineer

2015 - 2019
NLogic
  • Worked on numerous Azure-based web apps and services, utilizing several features of the platform, including multiple instances, Service Bus, and deployment slots.
  • Contributed to the migration away from MVC and Razor to .NET Core and Angular.
  • Developed new features for NLogic's proprietary web-based platform.
  • Contributed to a Selenium end-to-end testing solution, which was a purely code-independent framework.
  • Promoted the use of behavior-driven development (BDD).
Technologies: C#, .NET Core, T-SQL (Transact-SQL), Microsoft SQL Server, Azure, Angular, HTML5, CSS3, JavaScript, TypeScript, Git, Selenium, Behavior-driven Development (BDD)

Senior Software Developer

2015 - 2015
KEV Group
  • Developed a secure custom personal information form using the latest HTML5 input types, which included capturing users' signatures from Canvas elements.
  • Built a custom dynamic PDF report to output the contents of previously entered secure forms. The report was entirely data-driven with nothing hard-coded.
  • Developed a secure API for importing student data from various providers.
  • Mentored junior team members on software development best practices.
  • Collaborated with a business analyst to convert business requirements into tickets and corresponding acceptance criteria.
Technologies: C#, T-SQL (Transact-SQL), Microsoft SQL Server, CSS3, JavaScript, jQuery, ASP.NET MVC, TortoiseSVN, HTML5

Software Developer and Team Lead

2011 - 2014
Enprecis Group (Formerly Vital Insights)
  • Led a group of four developers and helped them implement projects. Ensured code quality and adherence prior to deployment and, if necessary, sent projects back to specific developers or corrected mistakes myself.
  • Converted business requirements provided by clients into working software solutions.
  • Architected and developed new features and performed emergency bug fixes.
  • Built a new reporting mechanism to reduce customer report turnaround time, made file delivery easier, saved countless hours of development time via automation.
  • Wrote an SMS component to send survey invitations to non-US customers.
Technologies: C#, ASP.NET, T-SQL (Transact-SQL), Microsoft SQL Server, HTML, CSS3, JavaScript, jQuery, TFS

Software Developer

2001 - 2011
Canmark Technologies Ltd.
  • Created entire report suites for several large automotive clients based upon their specifications. Many reports were generated by in-house tools that I developed.
  • Developed and maintained new functionality for optical scanning software written in C++, leading to faster project turnaround times and fewer person-hours.
  • Built and maintained new functionality for a data entry program written in C++ and used to process images from an optical scanning process.
  • Developed an online survey creation system that produced a 12-language survey.
  • Interpreted and carried out client requests for ad hoc reports and suggested possible analyses when warranted.
  • Provided software development training and mentoring to fellow employees.
Technologies: C, Visual Basic for Applications (VBA), Visual Basic 6 (VB6), MySQL, Apache, Linux, HTML, CSS, Perl, PHP, JavaScript, C++

Product Stages

https://www.youtube.com/watch?v=BITwKsBnwpM
A passive-income project meant to compete with Jira. The Product Stages application was powered by MySQL and PHP running on the back end and pure JavaScript running on the front end. I was the sole developer and also created a Selenium-powered C# desktop application to test the application.

Languages

C#, T-SQL (Transact-SQL), C, JavaScript, TypeScript, HTML5, CSS3, C++, Visual Basic 6 (VB6), Bash Script, Visual Basic for Applications (VBA), HTML, CSS, Perl, PHP

Paradigms

Behavior-driven Development (BDD), Azure DevOps, Scrum

Storage

Microsoft SQL Server, MySQL, Oracle PL/SQL, MongoDB

Frameworks

Angular, Selenium, .NET Core, ASP.NET, ASP.NET MVC

Tools

xUnit, Git, Microsoft Access, TFS, Visual Studio, Apache, TortoiseSVN, Jira, GitLab

Platforms

Azure, Oracle, Docker, Windows, Visual Studio Code (VS Code), Linux

Libraries/APIs

jQuery, REST APIs

Other

Scrumban, Scrum Coaching, CI/CD Pipelines

2000 - 2001

College Diploma in Information Technology and Networking

Herzing College - Toronto, Ontario, Canada

OCTOBER 2019 - PRESENT

Professional Scrum Product Owner I (PSPO I)

Scrum.org

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring