Craig Lawrie


Web Developer - Analytical Problem Solver

Portfolio


My professional software development experience has not included any public-facing content to share. Instead, here are a few examples of projects that I have worked on for fun, for practice, or to experiment with a new language or tool.


Time at Temperature

Tic-Tac-Toe

Virtual Metroparks


Ill Advised Regex

Medical Device Simulation

About


Welcome to my page! I am a software developer working in the Cleveland, Ohio area. Currently I am working in a full stack team on enterprise projects using Angular/JavaScript/CSS/HTML, Redux/ngRx, .NET Core API, C#, RESTful APIs, and MS SQL Server. I have also worked with a variety of other frameworks and languages through previous projects and my prior career, including Web Forms, Windows Forms, ASP.NET MVC, Python, Microsoft VBA, MATLAB, QTScript, ANSYS APDL. I've also done some Unity 3D just for fun, because why not? If that list didn't make you immediately want to start skimming, or even if it did, consider checking out my LinkedIn page for more of this kind of stuff.

I am a career changer. I invested years into a physics degree an engineering career - first I developed medical devices from concept to production and later I developed lightweight carbon fiber parts for aeronautics and oil indusctry customers. This investment has paid off with respect to my transition into software development direcly by providing experience programming in various scripting languages, but also indirectly by strengthening my analytical skills and my learning agility. On this page, see "Time at Temperature" for an example of how I used programming skills for carbon fiber development, and "Medical Device Simulation" for an example of my scripting while developing MRI coils. Shoutout to Tech Elevator Cleveland for my cross training!

Dance


When there isn't a global pandemic, I enjoy ballroom dancing! I have been dancing since 2010. Besides for taking lessons and going to ballroom dance parties, I have taught classes, choregoraphed routines, and performed on multiple occasions. Please enjoy these videos from our club's annual showcase events!


Time at Temperature


This project is a data processing excercise used to predict the cure time of epoxies and other thermosetting plastics. Data containing the time, temperature, and energy released by the sample was processed in a Python script following algorithms described by Sbirrazzuoli and Vyazovkin (see references). See in on github.

Close Project

Tic-Tac-Toe


Just a little bit of ASP.NET MVC practice! The game-state and AI computer turn are manated entirely on the server side. To maintain state, the current plays are stored in Session. See it on github or on AppHarbor!

Close Project

Virtual Metroparks


This full stack project was my team's capstone project at Tech Elevator. We used ASP.NET 5.0, MS SQL Server, and the open source pannellum library to create a 'virtual tour' experience for the Cleveland Area Metroparks. Our team won first prize for the 2018 Cleveland Metroparks Hackathon with this project! See it on github or on AppHarbor! (Note that only "South Chagrin Reservation" has a trail.)

Close Project

Ill Advised Regex


Quick work story: I was working once on a tool that would compare XML between two different API responses, and I wanted the user to be able to 'fuzzy search' the content, including allowing number ranges. I quickly learned that regex was not the correct tool for including number ranges in a search string, where it would be better to extract the numbers and use a small amount of C# logic instead. But that meant missing out on all this fun! So I went home and wrote a tool to generate regex patterns that would match ranges of numbers. What better way to increase my comfort with regex? As a bonus, this was a great opportunity to practice some TDD. See it on github.

Close Project

Medical Device Simulation


This example project was done for an employer, and the code is proprietary. This poster presentation, which is publically available, demonstrates the work. I used QtScript to procedurally generate 3D models in Remcom's XFdtd simulation software, which allowed me to efficiently complete my investigation and write this poster presentation report. Scripting projects like this were what brought my attention to how much I enjoy programming tasks in my work!

Close Project