Hi, I'm Craig.

I approach software development holistically:  I consider it as a developer, as QA, as a project manager, as the business owner, and I also try to view like the customer.

Employment History

Jan 2023 - Jan 2025

Jul 2007 - Dec 2022

Jun 2007​ and earlier

Ideal Job Qualities

Make a Difference

Throughout most of my career, I've had the privilege of working on projects that make a difference, whether for environmental sustainability, aviation safety, or essential communication.

Amplify Existing Skills

Every software challenge is an opportunity to expand my skillset, whether it's through development, QA problem-solving, exploring new architectures or new applications of my project management skills.

Learn New Skills

I'm driven by continuous learning, both personally and professionally. All the skills I've accumulated over the years has given me a holistic overarching understanding of how to build software.

Tech stacks and platforms change, software development lifecycle approaches change -- but software products always come back to some configuration of principles of product management, people management, software programming, quality management, and project management.

Skills

Engineering Management

  • Communicating Business Goals, Plans and Needs
  • Hiring & Interviewing
  • Organizing Onboarding & Training
  • Performance Evaluations
  • Process Development & Management
  • Team Documentation
  • Change Management
  • Root Cause Analysis & Blameless Post-Mortems
  • High-Level Understanding of Software Architectures, Patterns and Tech Stacks

Project Management

  • Communication of Project Status, Updates and Issues
  • Planning, Scheduling, Task Management
  • Workload Prioritization
  • Resource Allocation
  • Risk Management
  • GANTT Charts
  • Organization

Program Management

  • Leadership
  • Project Coordination
  • Cross-Team Coordination & Collaboration
  • Risk Management
  • Systems Thinking
  • Software Architecture
  • Jira Administration

Other

  • Customer Relations and Relationships
  • Geospatial
  • Aerospace
  • Client Relations
  • Customer Service
  • Technical Support
  • AS9100D (QA Standard)
  • DO178C DAL C (Aerospace Systems Standard)

Software Development

  • Team Leadership
  • Translation of Requirements Into Functional Software
  • Server- and Cloud-Based System Architectures
  • Software as a Service (SaaS)
  • C#, .NET and OOP (very strong)
  • Unit Testing
  • JavaScript/TypeScript (moderate, rusty)
  • SQL Databases (MSSQL DBA, MySQL)
    & Data Architectures (very strong)
  • Data Transformation / Data Migration
  • Algorithms and Patterns
  • APIs & Web Services
    (including REST, SOAP and XML)
  • Containers
  • Agile and Waterfall Software Development Lifecycles (SLDC)
  • Version Control (Git/SVN)
  • Server-Based DevOps
  • Problem Solving & Critical Thinking
  • Domain Driven Design (DDD)
  • Test Driven Design (TDD)
  • Project and Task Estimation
  • Design & API Documentation

Software Testing / SQA / SDET

  • Team Leadership
  • Communication & Collaboration with Software Developers
  • Test Plans & Test Reports
  • Regression Analysis
  • Writing Test Procedures from Requirements
  • Experience with various Test Softwares
  • Automated Testing with Selenium & WinAppium
  • Automated Testing with Playwright
  • Automated Testing with JMeter
  • Bug Reports
  • Bug Tracking
  • Creative Thinking
  • Analytical Mindset
  • Attention to Detail
  • Tool Validation
  • Documentation

Quality Assurance

  • Internal Auditing
  • Risk Analysis
  • Root Cause Analysis
  • Documentation

Samples

Due to the era I began in and the lack of prior need, I don't have a ready portfolio of code. My recent Advent of Code participation offers a fair example of my C# code organization and coding style.  You might notice that it is inspired by DDD and TDD.

For convenience, I executed my solutions within a unit testing harness rather than wrapping them in a CLI.

 ​​https://github.com/craig-cote/AoC-2024

Projects

I have start working on a web + app AWS serverless-based project, written in C# .NET on the backend and with a .NET Aspire / Blazor front-end.

Certifications & Learning

Current Certifications Planned

March
- AWS Knowledge Badge: Serverless
(completed)

- AWS Knowledge Badge: Events and Workflows
(completed)

- Scrum Alliance: Scrum Essentials
(completed)

A​pril
- AWS Certification: Developer - Associate

- AWS Knowledge Badge: AWS for Games: Cloud Game Development
(completed)

- Scrum Alliance: AI For Scrum Masters
(completed)

May
- AWS Knowledge Badge: Compute
- AWS Knowledge Badge: Amazon EKS

June
- AWS Certification: AWS Certified AI Practitioner

Previous Certifications

Microsoft
- Microsoft Specialist: Programming in C# (2015)

- Microsoft Certified Technology Specialist: .NET Framework 4, Web Applications (2012)

- Microsoft Certified IT Professional: Database Developer on SQL Server 2005 (2007)

- Microsoft Certified Professional Developer: Enterprise Application Developer (2007)

- Microsoft Certified Professional Developer: Web Developer (2007)

IEEE
- Certified Software Development Professional (CSDP) (2010)

QAI Global Institute
- Certified Software Tester (CSTE) (2021)