David Vedvick


View the PDF version!

David Vedvick - Computer Engineer

Senior developer with many years of experience focused on best practices to better deliver quality software.

Technical Skills

Test-Driven Development, C#, .Net, Docker, ASP.Net, Javascript, ReactJS, MVC, Entity Framework, Android, Java, Powershell, XAML, nHibernate, Delphi, MySQL, SQL Server, SQLite, Ubuntu/Debian, Linux, Windows (Server 2008, 2012, 2016, Core, 7, 10)


ProtoLabs July 2015 – Present

Senior Software Engineer

  1. Senior Developer implementing and maintaining a pricing engine for the company's major products
  2. Developed from the ground up utilizing industry best practices in test-driven development, pair programming, and automated acceptance testing
    1. System replaced earlier pricing engine within a monolithic code base
    2. Re-written from scratch over the course of 1.5 years
    3. Went live with no defects
  3. Delivers prices custom-tailored to customers' CAD designs, with an algorithm configurable by the business

Rosemount (Emerson Process Management) June 2014 – June 2015

Software Engineer

  1. Maintained a click-once application to track and run hundreds of hardware tests on Rosemount pressure products
    1. Reduced frequency of crashed tests runs
    2. Improved reliability of communications with Modbus serial devices using an event-driven architecture
    3. Built an extensible tool to communicate directly with devices in the application to perform diagnostics on devices – HART and Modbus had so far been implemented
  2. Introduced code reviews to supervisor to improve code quality and spread knowledge of changes
  3. Re-established the use of development and release branches to enable more responsive development from the team
  4. Maintained a Silverlight Line-of-Business application for creating and tracking test jobs using entity framework and a RIA services back-end
    1. Converted usage of a single shared connection across View Models to properly scoped database connections, eliminating possibility of different entities overwriting each other's data
    2. Switched from use of a full database for unit testing to using MOQ, improving speed and reproducibility of bugs discovered in unit testing
    3. Streamlined and improved Job search functionality
    4. Improved load times in multiple areas of the application

QuadraMed March 2012 – June 2014

Software Engineer

  1. Maintained a Hospital scheduling application with 20 years of history, used by dozens of hospitals
  2. Modified the processing model of a faxing application written in C# to better support multi-threading
  3. Analyzed and developed a new model for grouping appointments together into associated procedures
  4. Ported old DLL plug-in to be in the actual client program and utilize the web service
    1. Wrote a wrapper around the automatically generated Delphi web service client to enable easy client configuration and instantiation
  5. Ported an e-mail appointment reminder service from a MAPI-based Delphi client to use POP3 and SMTP using C#
    1. Added support for automatically attaching vCal’s so that the appointment could be added to a patient’s calendar program (such as Outlook or Gmail)
  6. Built a tool for searching Crystal Reports
    1. Supports Regular Expression searches as well as normal text searches
    2. Searches recursively through sub-documents

Meridian Technologies January 2010 – March 2012

Software Developer/Consultant

Wells Fargo Custom Docs

  1. Developer on an ASP.Net project that generated custom Loan Agreements based on information about the borrower and Lender.
  2. Utilized SQL Server 2008 to store the database.
  3. Mapped Loan Agreement templates with conditions in Excel, wrote C# command line utility to load documents using the SQL and Excel COM object libraries into the database.
  4. Developed with a team the site for the Loan Administrator to enter in information that fed into the documents; created the interface using a combination of jQuery and the AJAX Control Toolkit.
  5. Developed a rendering engine for the Loan Agreements; was fully conditional and logically complete. Text could be displayed depending on whether a condition was true or not, and fields from the UI could feed into the Loan Agreement.
  6. Rendered Loan Agreements were then editable in a WYSIWYG editor (TinyMCE) and also printable via iTextSharp.
  7. Numerous improvements were made in the iTextSharp source code to improve compatibility with the HTML specifications.


  1. Actively developing project blue, an Android audio streaming client that interfaces with JRiver Media Center
  2. Developed store website (www.deliciouspc.com) using PHP (CakePHP MVC framework), MySQL and Linux

Online Portfolio


Bachelor's of Science in Computer Engineering; North Dakota State University (December 2009)


NCEES Fundamentals of Engineering Exam (November 2009)