Andrew McKernan
Verified Expert in Engineering
Software Developer
Edmonton, AB, Canada
Toptal member since November 19, 2021
After receiving education in computer engineering at the University of Alberta, Andrew worked full-time in the field. More recently, he has decided to pursue freelance work full-time out of a desire for diverse, engaging, and challenging work. Andrew is experienced in web development, mobile apps, and more. In Andrew, you will find a creative developer eager to contribute to the team and company.
Portfolio
Experience
Availability
Preferred Environment
PyCharm, Visual Studio, MacOS, Windows, Linux
The most amazing...
...thing I've developed is Edmonton ICU, an iOS and Android app. The companion API and desktop app allow making updates to the mobile app on the fly.
Work Experience
Lead Software Developer
Offerd
- Independently maintained and updated the system architecture of a Mendix application, handling development of new features, dev ops tasks, and integrations with external tools such as Hubspot.
- Developed an automated test suite using Cypress, preventing deployment errors and increasing application stability.
- Utilized Hubspot workflows to update the client's application in real time in response to events in the CRM.
- Utilized SendGrid's API to seamlessly integrate email notifications and updates into the client's application.
- Maintained a detailed record of all tasks completed using Jira and Google Sheets.
.NET Developer
Anderson Taylor LLC
- Utilized the Highcharts data visualization library to create new charts and update existing ones in the client's web portal.
- Worked with ASP.NET, JavaScript, and CSS to repair issues and add new features to the client's existing web portal.
- Extensively used Git command line tools to integrate several developers' work into one unified, cohesive code branch.
Data Solution Developer
Anonymous Company
- Developed the full stack of a Django website, allowing customers and internal users to automatically create data processing requests for specific entities.
- Maintained, fixed, and improved old data processing code, boosting performance significantly and increasing error tolerance.
- Deployed new software onto Google Cloud and created a new cloud infrastructure, including databases, secret storage, and automated scaling based on demand.
- Wrote Python scripts to process large files, CSVs, and other similar data to create meaningful statistics.
- Processed geospatial data into a standardized format and uploaded the said data into client's existing systems for further processing.
Systems Engineer
Interdynamix
- Created an internal web application for managing inventory and maintaining audit logs using Django and PostgreSQL.
- Developed internal WebGUI and multiple back-end components for APIs supporting Carbeeza, a car marketplace application, using Spring and Thymeleaf.
- Ensured internationalization and localization (i18n) were integrated into the back and front end of Carbeeza API.
- Tracked and responded to bugs using primarily Jira as a reporting tool.
- Worked with Docker and Kubernetes to allow deployment and communication between various components of the Carbeeza application.
- Used GitLab CI/CD tools to ensure proper functionality and integration of my code with the rest of the Carbeeza application.
Software Development Student
PCL Construction
- Developed a job marketplace application PCL Craftlink on iOS and Android platforms in C# using Xamarin.
- Revamped a UI and back end of internal web application using HTML5, JavaScript, and ASP.NET Razor.
- Debugged and upgraded features on a progressive web app using React and ASP.NET Web API for back-end calls.
Hardware Support
Nokia
- Tested, debugged, and updated a C# data analysis application for the hardware team to analyze failure rates of hardware components.
- Wrote various Visual Basic for Applications (VBA) scripts for Excel add-ons to aid hardware engineers and automate data visualization of multiple SQL databases.
- Maintained documentation of all written software through development cycles.
Quality Assurance (QA) Engineer
MegaSys Computer Technologies
- Performed intensive debugging processes and procedures to ensure quality in the MegaSys Telenium Client Suite's various applications.
- Utilized C#, SQL, XAML, and WPF to develop a database management application for the development team's use.
- Used Jira reporting software to help report issues and bugs discovered.
Experience
Commercial Vehicle Sale and Management Platform
Edmonton ICU for Android and iOS
https://play.google.com/store/apps/details?id=com.edmontonezpfcc.EDM_ICU_MOBILERound Robin Form Service
The client oversaw facilitating communication to a small group of specialists but found that certain specialists were contacted disproportionately, causing an uneven distribution of work. This application was created to evenly distribute these work requests among the group of specialists fairly and anonymously. Administrators create and add a set of embedded forms into the application's database, each form linking to a specific recipient's inbox. When end-users log into the site, they automatically get a form based on previously accessed forms. This ensures a fair distribution of requests in the given group and removes any personal bias from the equation. The site was developed using Django.
Django Wedding Website
SkillsTuneUp.com
http://skillstuneup.comFacility Sign-in App
Given their large facility, the client had issues with staff leaving and setting the alarm while others were still in the building. They wanted an app available on user devices and on mounted tablets by the entrances to allow users to sign in and out of the building and ensure that no one else was present.
I designed the iOS and Android app and the accompanying back end that handles the sign-in and sign-out. The back end was built using the Django REST framework.
Solo Game Development
https://chrygore.itch.io/Education
Bachelor's Degree in Computer Engineering
University of Alberta - Edmonton, Alberta, Canada
Skills
Libraries/APIs
API Development, REST API, Django, jQuery, Python API, React.js, NumPy, Pandas, Xamarin, Xamarin, Node.js, PyQt, Pygame, ArcGIS, SendGrid API
Tools
Git, GitHub, PyCharm, Visual Studio Development, GitLab CI/CD, Postfix, Nginx, Vultr, Git, SQL, Android, Unity SDK, PyInstaller, Presentation Foundation, ChatGPT, SendGrid, Jira, Google Sheets Development
Languages
Python, C#, JavaScript, Python, SQL, .NET, Java, HTML, HTML5, Bash, CSS, C++, Visual Basic, Excel VBA, XAML, JQL, Java Persistence Query Language (JPQL), Swift, TypeScript, SCSS
Frameworks
Django, Django, .NET, Unity, ASP.NET, Spring Boot, Unity2D, Spring, Thymeleaf, ASP.NET, Windows Presentation Foundation (WPF), Flask, Spring, Angular, Unity, Android SDK, Bootstrap, ASP.NET MVC, Cypress, Selenium, .NET Core
Paradigms
REST, API, Object-relational Mapping (ORM), Test Automation, DevOps, Mobile App Design, Cross-Platform, App Development, API, Model View ViewModel (MVVM), Model View Controller (MVC), Design Patterns, Agile Development, Microservices Development, UI Design
Platforms
Windows Development, Linux, Azure, Xamarin, Docker, Kubernetes, Ubuntu, DigitalOcean, Android, iOS, Mobile App Design, MacOS, Cloud Engineering, AWS, Mendix, HubSpot Development
Storage
PostgreSQL, MySQL, SQLite, Google Cloud Development, Database, XML, JSON, SQL Server, Database Modeling, Elasticsearch, Amazon S3
Industry Expertise
Web Development
Other
APIs, Software Development, Web Development, Mobile App Design, QA Testing, Critical Thinking, SSH, Excel 365, Ajax, Web Development, Back-end Developers, Mobile Back-end, Leadership, Software Design, Software Architecture, Scripting, UI Development, API Integration, Full-stack, RESTful Services, Python Dataclasses, API Applications, Python Attrs, Web Dashboards, Front-end, Chatbot Development, PWA, Android, Economic Development, Manual QA, QA Testing, Software QA, Architecture, Integration, Gunicorn, Full-stack, Single-page Applications (SPAs), Data Engineering, Mobile Apps, Native Mobile Apps, HTML Parsing, System Security, System Security, MVP Design, Minimum Viable Product (MVP), Cloud Services, Server Management, Server Security, Agile Sprints, CI/CD Pipelines, SaaS, Reports, Statistics, Geospatial Data, Video Gaming, API Connectors, Document Parsing, Email Parsing, PDF, Conda, Mobile Games, .NET 8, .NET Framework
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring