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

David Pring

Verified Expert  in Engineering

Full-stack Web Developer

Toronto, ON, Canada

Toptal member since September 8, 2021

Bio

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

  • C# - 10 years
  • T-SQL (Transact-SQL) - 10 years
  • Microsoft SQL Server - 10 years
  • CSS3 - 10 years
  • HTML5 - 7 years
  • TypeScript - 5 years
  • Angular - 5 years
  • Azure - 5 years

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++

Experience

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.

Education

2000 - 2001

College Diploma in Information Technology and Networking

Herzing College - Toronto, Ontario, Canada

Certifications

OCTOBER 2019 - PRESENT

Professional Scrum Product Owner I (PSPO I)

Scrum.org

Skills

Libraries/APIs

jQuery, REST APIs

Tools

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

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

Platforms

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

Other

Scrumban, Scrum Coaching, CI/CD Pipelines

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