Steven Deng, Software Developer in Edmonton, AB, Canada
Steven Deng

Software Developer in Edmonton, AB, Canada

Member since March 21, 2022
Steven has over twenty years of professional IT work experience using different .NET framework technologies. He is an expert in building web applications using C#, .NET, SQL Server 2019, JavaScript, jQuery, React, AngularJS, Angular, CSS, and the .NET Framework 4. Steven is well-recognized as a go-to person in his current and previous project teams and is also capable of wearing different hats.
Steven is now available for hire

Portfolio

Experience

Location

Edmonton, AB, Canada

Availability

Part-time

Preferred Environment

Windows 10, Android

The most amazing...

...thing I've solely built is a solution to convert over 100 years of school marks from the mainframe for the government of Alberta, Canada.

Employment

  • Senior Application Developer

    2020 - PRESENT
    Alberta Post-Secondary Application System (APAS)
    • Used .NET Core API to develop the APAS external transcript document delivery system, which exchanges student documents between APAS and post-secondary application systems from other provinces in Canada.
    • Designed and developed an ASP.NET MVC site to monitor health of all existing applications and report abnormalities to system administrators.
    • Reviewed and tuned existing SQL artifacts. The review feedback and the performance tuning prevented database server performance degradation during student transcript release dates (peak usage window).
    • Migrated the company's source code repository from Team Foundation Server to Git and also developed builds and workflows to enable CI/CD.
    Technologies: ASP.NET MVC, .NET Core, jQuery, .NET 4, .NET 6, SQL, Microsoft Team Foundation Server, C#, LINQ, SQL Server 2016, SQL Server 2017, HTML, TypeScript, React, Microsoft SQL Server, .NET, REST APIs, APIs, React Native, Databases, Android, App Development, ASP.NET Core, HTML5, Web API, Visual Studio
  • Senior Application Developer

    2019 - 2019
    Accenture
    • Contributed to the enterprise-architected CIS/eCO modernization project to convert a mainframe insurance claim system into an N-tiered .NET web-based claim system.
    • Tracked and fixed bugs using Team Foundation Server as a reporting tool.
    • Reviewed and fine-tuned application codes and improved application performance to increase customer satisfaction.
    Technologies: ASP.NET, C#.NET, Visual Basic .NET (VB.NET), JavaScript, jQuery, CSS, Microsoft Team Foundation Server, C#, LINQ, SQL Server 2016, SQL Server 2014, HTML, Microsoft SQL Server, .NET, Databases, App Development, HTML5, Visual Studio
  • System Transition Team Lead

    2011 - 2019
    Alberta Education
    • Developed myPass, a secure self-service website that offers access to students’ information. myPass is primarily used by students and their parents or guardians.
    • Designed and converted the province of Alberta's over 100 years of student marks information from mainframe to SQL Server using SSIS.
    • Acted as the system transition team lead; planned and coordinated the launch of the modernized Provincial Approach to Student Information System (PASI) to replace an outdated mainframe system.
    • Refined and built a fully automatic deployment system using Git repositories, BuildMaster, and Chef to replace a manual deployment process.
    • Reviewed SQL artifacts and developed SQL script coding standards for the client.
    • Managed and supported over ten different testing environments for the project to ensure smooth QA, UAT, and conformance tests activities.
    Technologies: AngularJS, ASP.NET MVC, C#.NET, SQL, Angular, Chef, Git, SQL Server DBA, SQL Server Integration Services (SSIS), SQL Server Reporting Services (SSRS), Node.js, Microsoft Team Foundation Server, C#, LINQ, GitHub, SQL Server 2016, SQL Server 2012, SQL Server 2008, HTML, TypeScript, Microsoft SQL Server, .NET, Windows App Development, REST APIs, APIs, Databases, App Development, HTML5, Web API, Visual Studio
  • Lead Application Developer

    2008 - 2011
    DynaLIFE
    • Developed a patient appointment booking website that is still in use today. The website significantly reduced the number of supporting staff and increased customer satisfaction.
    • Built an incident management system using CRM 4 and .NET plugins to replace a once manual incident management process.
    • Created a facility management system using CRM and .NET plugins to automate the maintenance parts procurement process.
    • Developed several content management websites using DNN to facilitate company-hosted events such as symposiums and conferences for users to collaborate.
    Technologies: ASP.NET, CRM 4, SQL, SharePoint, SQL Server Reporting Services (SSRS), DNN, Microsoft Team Foundation Server, C#, LINQ, SQL Server 2008, HTML, NUnit, Microsoft SQL Server, .NET, APIs, Databases, HTML5, Web API, Visual Studio
  • Senior Application Developer

    2008 - 2008
    Solicitor General
    • Developed pilot projects to experiment with new ideas to assist clients in modernizing an in-house mainframe system to use .NET SOA services. Used C#.NET and SQL.
    • Delivered recommendations on technical standards and the recommendations were later turned into a project charter for the modernization project.
    • Evaluated and set up standard development toolsets and created customized test environments with scramble data.
    Technologies: Service-oriented Architecture (SOA), SQL, C#.NET, WCF Web Services, Microsoft Team Foundation Server, C#, HTML, NUnit, Microsoft SQL Server, .NET, Databases, HTML5, Visual Studio
  • Application Developer

    2007 - 2008
    ATCO I-Tek
    • Developed customized SharePoint portals using C#.NET and SharePoint 2003.
    • Built and developed regional electricity consumption reports using C#.NET and Excel as reporting tools.
    • Designed and implemented electricity consumption input file validation rules to replace a once manual process. Customers were happy with the improvement as the input files are error-free, which significantly reduces the processing time.
    Technologies: WinForms, VB.NET, Oracle, SharePoint, C#.NET, C#, HTML, NUnit, .NET, Windows App Development, Databases, Visual Studio
  • Application Developer

    2005 - 2007
    MatrikonOPC
    • Developed an oil and gas equipment monitoring software using C++ and MFC. It analyzes real-time data, computes statistical models, and generates real-time reports to improve decision making.
    • Used JavaScript and Java applets to create online reports to aggregate real-time data into graphic charts.
    • Designed and built a customized inline parser using C++, enabling users to create customized expressions to monitor processes.
    Technologies: C++, Microsoft Foundation Class Library (MFC), SQL, JavaScript, ASP.NET, Applets, C#, HTML, MATLAB, NUnit, Microsoft SQL Server, .NET, Windows App Development, Databases, Visual Studio
  • Application Developer

    2005 - 2005
    Upside Software
    • Used NUnit to develop a unit test solution for the Upside Forms that extracts information from MS InfoPath and renders XSLT online.
    • Developed a customized solution using C#.NET to extract zipped InfoPath file parts in memory and save information accordingly into the SQL database.
    • Designed and developed a customized InfoPath expression parsing engine for the Upside Forms solution. Used C#.NET and XSLT.
    Technologies: C#.NET, NUnit, ASP.NET, SQL, C#, HTML, Microsoft SQL Server, .NET, Databases, Visual Studio
  • Research Assistant

    2001 - 2004
    University of Alberta
    • Designed and implemented the control software and validated the results with a real-world PUMA 560 robot arm.
    • Published two papers in major robotic conferences.
    • Generated animations on a website using JavaScript and VRML.
    Technologies: C++, MATLAB, Numerical Analysis, JavaScript, VRML, HTML
  • Teaching Assistant | Lab Instructor

    1999 - 2004
    University of Alberta
    • Developed automatic marking tools to grade student programs using Bash scripting languages.
    • Reviewed and updated undergrad computer programing lab materials and instructed labs in C++ and MATLAB.
    • Assessed and reviewed student programs in C++ and MATLAB.
    Technologies: C++, MATLAB, Numerical Analysis, Bash, HTML

Experience

  • Province Approach to Student Information (PASI) for the Government of Alberta
    https://public.education.alberta.ca/PASI/mypass/welcome

    The Provincial Approach to Student Information (PASI) program is a student information repository. It is available online in real-time and shared between individuals and organizations who require access to the information, including students, parents, schools, school authorities, and Alberta Education.

    I started on the PASI project as a full-stack developer. From that first day, I learned the application quickly and made meaningful contributions. With my expert knowledge of SQL Server, I helped the team optimize SQL scripts and provided guidance on good coding practices. I also adapted quickly to the many technological changes over the years. Later in my role as a deployment lead, I worked closely with other teams to move a manual deployment process to an automated one all the way to production. I've always been eager to go the extra mile with deployments outside of regular business hours and ensure minimum downtime for the system.

  • External Transcript Document Delivery System for Service Alberta

    APAS external transcript document delivery system is a highly available, autoscaling, fault-tolerant message delivery system between APAS and post-secondary application systems from other provinces such as BC and SK. It was built using RabbitMQ, Redis, and microservices from the ground up. The RabbitMQ and Redis are both set up as clusters to support high availability. The workers can autoscale based on the number of messages in the queue and fully support fault tolerance by retry pattern.

    I served as the principal engineer, building major microservices from the ground up and integrating monitor UI as part of an ongoing DevOps initiative in the development process. In addition to developing the core features for these digital products, I acted as a back-end developer to build back-end services to support the front-end features and functionality.

  • Patient Appointment Booking Website for DynaLife

    The patient appointment website is a secure self-service website that allows users access to their appointments. It was designed to replace a manual process for keeping patient appointment information.

    I acted as the key front-end engineer in charge of development. The website was launched in 2009, and its successful launch reduced workloads for supporting staff and increased customer satisfaction due to reduced wait time.

Skills

  • Languages

    Pascal, JavaScript, C#.NET, SQL, Bash, C#, HTML, TypeScript, HTML5, C++, Assembly, Java, VRML, Visual Basic .NET (VB.NET), CSS, VB.NET
  • Frameworks

    .NET Core, Angular, React Native, AngularJS, ASP.NET MVC, .NET 4, ASP.NET, NUnit, .NET, ASP.NET Core
  • Libraries/APIs

    jQuery, WinForms, Node.js, LINQ, React, REST APIs, Web API, Microsoft Foundation Class Library (MFC)
  • Tools

    MATLAB, Git, Microsoft Team Foundation Server, GitHub, Visual Studio, Chef, RabbitMQ
  • Paradigms

    REST, Windows App Development, App Development, Service-oriented Architecture (SOA)
  • Platforms

    Android, SharePoint, Oracle, DNN
  • Storage

    SQL Server DBA, SQLite, SQL Server Integration Services (SSIS), SQL Server Reporting Services (SSRS), SQL Server 2008, SQL Server 2012, SQL Server 2014, SQL Server 2016, SQL Server 2017, Microsoft SQL Server, Databases, Redis
  • Other

    Windows 10, .NET 6, CRM 4, APIs, Numerical Analysis, Robotics, Computer Vision, Image Processing, WCF Web Services, SSL Certificates, Applets

Education

  • Master's Degree in Computer Science
    2001 - 2004
    University of Alberta - Edmonton, Alberta, Canada
  • Bachelor's Degree in Computer Science
    1997 - 2001
    University of Alberta - Edmonton, Alberta, Canada

To view more profiles

Join Toptal
Share it with others