Senior Application Developer
2020 - PRESENTAlberta 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, Large-scale Projects, Full-stack, JSON Web Tokens (JWT), Bootstrap, Next.jsSenior Application Developer
2019 - 2019Accenture- 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, Drag & Drop, Large-scale Projects, Full-stack, JSON Web Tokens (JWT)System Transition Team Lead
2011 - 2019Alberta 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, Large-scale Projects, Full-stack, JSON Web Tokens (JWT)Lead Application Developer
2008 - 2011DynaLIFE- 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.0, 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 StudioSenior Application Developer
2008 - 2008Solicitor 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 StudioApplication Developer
2007 - 2008ATCO 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: Windows Forms (WinForms), VB.NET, Oracle, SharePoint, C#.NET, C#, HTML, NUnit, .NET, Windows App Development, Databases, Visual StudioApplication Developer
2005 - 2007MatrikonOPC- 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 StudioApplication Developer
2005 - 2005Upside 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, Large-scale ProjectsResearch Assistant
2001 - 2004University 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, HTMLTeaching Assistant | Lab Instructor
1999 - 2004University 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