source code

Hello! I'm Michael, a full stack software engineer
with over 25 years of professional experience.


Welcome to my online résumé and portfolio. If you'd prefer the short version, you can grab my traditional résumé instead.


About Me

  • Self-motivated full stack software engineer with many years of professional experience performing against tight project deadlines for various levels of clients
  • Strong work ethic and desire to succeed, always striving towards success and excelling at any tasks regardless of the role
  • Flexible and focused with a means to learn, develop, and implement new technologies quickly and efficiently
  • Business oriented mindset specializing in identifying, streamlining and automating inefficient business processes and realizing returns on investment
  • Outstanding interpersonal skills demonstrated by maintaining excellent client/customer relationships with large numbers of end users

Technical Expertise

The following is an overview of technologies which I have experience with. These are the tools I employ to accomplish the jobs I perform.

AJAX
AngularJS
APEX
Batch APEX
Bootstrap
C/C#
CSS
HTML
Java
JavaScript
jQuery
JSON
LESS
Liquid
LWC
Markdown
Node.js
Perl/mod_perl
PHP
Python
Regular Expressions
Ruby/Rails
TypeScript
Visualforce
Visualforce Remoting
XML
Amazon S3
Apache
APIs
Digital Ocean
Docker
Dokku
ETL
Git
Github
Heroku
iCIMS
Jekyll
LAMP (Perl & PHP)
Linux
Mac OS X
MAMP
nginx
Rackspace Cloud & CDN
REST
Salesforce
Salesforce Administration
Salesforce Development
Salesforce Service Cloud
Sfdx
SOAP
UNIX
Web services
Windows/Server
Data Modeling
Microsoft SQL Server
MongoDB
MySQL
NoSQL
Oracle
PostgreSQL
SOQL
SQL
SQLite
AI Prompt Writing
Agile Methodoligies
Communication Skills
Computer Science
Continuous Integration
Debugging
DevOps
Flowcharting
Full-stack Development
Google Analytics
Kanban
Leadership
Mentoring
Microsoft 365
Okta SSO
Open Office
Peer Reviews
Scrum
Software Development
Software Implementation
Source Control Management
SVN (Subversion)
Technical Documentation
Test Cases
Test-driven development
User Experience (UX)
User Interface Design (UI)
Verbal & Written Communication

Work Experience

Working in IT for 20+ years has afforded me the privilege of participating in countless projects. Below you will find some accomplishments I feel are worth mentioning.

  • Implemented a single-page application on the Salesforce platform utilizing SOQL, APEX, AngularJS, jQuery, Bootstrap, Batch APEX, Triggers, VisualForce, VisualForce Remoting, SOAP, REST, and other technologies to save over 1,700 hours of manual data entry per month across more than 450 teams.
  • Served as the Project Manager for Okta single sign-on/automatic provisioning, saving 50 hours of manual user provisioning each month and increasing security across multiple systems such as Salesforce, Microsoft 365, Active Directory, iCIMS, and various other systems.
  • Integrated FedEx/UPS shipment tracking into the asset management system, saving equipment management teams and technical support teams over 400 hours a month and ensuring issues related to equipment shipping were identified proactively.
  • Integrated iCIMS ATS with Salesforce to pull in ATS information and push training information back into the ATS, saving HR teams 250 hours of manual entry per month.
  • Created and maintained a Salesforce data integrity monitor, saving administrators 30 hours a month by identifying and resolving issues with bad data within the system.
  • Developed fully interactive systems data flow diagrams for the numerous intertwined subsystems of KellyConnect, saving time and effort when reviewing the complex inner workings with non-technical team members.
  • Implemented development best practices across the team, including requirements gathering, user story organization, Kanban workflow tracking, coding styles, testing expectations, peer reviews, source control management, quality assurance practices, release processes, continuous integration practices, and an agile/devops mentality within the organization.
  • Developed a proprietary Salesforce sandbox data seeding application, saving developers and administrators 10-50 hours per project, as well as reducing the costs of purchasing and maintaining full Salesforce sandboxes (priced at over $50,000/sandbox/year for our organization).
  • Oversaw and mentored the development of a full integration with caching and rate limiting between Salesforce and Jamf for an internal application, saving team leaders and helpdesk personnel more than 80 combined hours of manual work per month.
  • Designed and implemented a universal Salesforce dependent picklist viewer, allowing admins to view all picklist dependencies, saving them 2 hours of manual work every time a picklist audit was required.
  • Supported and maintained internal ETLs (extract, transform, load) and their systems as well as performed general IT system administration tasks.
  • Assisted in implementing and quality assuring (via automated software testing) the My KellyConnect Rewards loyalty/incentive program.
  • Designed and implemented a customer callback tracking system to meet COPC compliance requirements.
  • Implemented data integrity monitoring, reporting, and new features into the IT Support Center call center application to expand new client possibilities.
  • Created tools for HDI Customer Satisfaction Index integration across multiple call centers saving hours of manual survey entry and analysis every month.
  • Created and maintained the "Ignite Core" application framework for efficient deployment of software applications, saving upwards of 20 hours of development time per project. The framework helped expand the entire product offering to include fully responsive mobile experiences. It also included automation of software deployment processes, as well as CDN deployment to Rackspace Cloud.
  • Implemented detailed analytical tools, saving metrics team members over 10 hours of work per project by allowing them to track intricate real-time information about application performance.
  • Automated Chrysler CRM system integration, saving over 10 hours of development time per project.
  • Created a service-based API framework running on Node.js, Express, MySQL/MongoDB, and the Mocha stack, which included model, controller, utilities, definitions, and unit test components with coding style enforcement. The development featured a one-step build process with resource validation libraries and definitions, a test-driven development model with unit test coverage reporting, and YUIDoc support for maintaining interactive digital API documentation.
  • Developed numerous social game experiences and interactions, including tool suites that saved teams tens of hours in setting up and configuring gaming experiences such as the "spot the difference" game.
  • Created large-scale social experiences that generated hundreds of millions of social impressions utilizing Facebook's Open Graph.
  • Principal engineer of the development tools suite (ePrize Devtools) with built-in analytics to track usage and benchmarking, which saved production delivery teams over 1,300 hours of development time per month. This software suite started as a personal project and eventually became a company-wide application.
  • Implemented "Prize Overflow", an internal version of Stack Overflow, which was used to resolve thousands of development questions, saving developers hundreds of hours per month.
  • Developed "Sales Contest Builder" (now LevelEleven) for the Force.com AppExchange that motivates performance for sales teams using Salesforce. The application drove a 15% increase in sales team performance when used within ePrize.
  • Worked with many of the top 100 US brand names on social projects and large loyalty platforms such as Stouffer's Dinner Club and Disney Movie Rewards.
  • Built multiple integrations with various social platforms such as Twitter (X), Facebook, Instagram, and other emerging social platforms.
  • Developed an automated testing suite to verify the integrity of various 'test' financial accounts, ensuring all accounts were zero-balanced, saving thousands of dollars in monthly penalties when developers did not zero out daily test balances.
  • Implemented development best practices across the team, including coding styles, unit testing, test-driven development, peer reviews, source control management, quality assurance practices, and release processes.
  • Designed and maintained a MySQL database with over 300 tables, utilizing quality database design principles to ensure the integrity of data coming in from various sources, saving database administrators many hours of data cleanup.
  • Created and maintained a large object-oriented model API for use in various business applications, saving developers hundreds of hours of direct integration with database layers by exposing APIs with appropriate safeguards and security measures in place.
  • Identified and converted multiple inefficient software applications (written in Visual Basic) into more flexible and efficient applications, saving various users of those applications hundreds of hours of work per month.
  • Developed a general office and call center helpdesk solution that integrated with the Cisco Asterisk telephony system, automating a large part of the customer experience and increasing customer service agent call volume by 30%.
  • Designed and maintained large relational databases using MySQL with an Object-Relational Model (ORM) based backend for developers to access data.
  • Responsible for supporting several web-based applications using Apache::ASP, as well as non-web applications, including a software vulnerability scanning suite used for MasterCard SDP Compliance scanning, which was the company's main product offering.
  • Developed large and small scale web application interfaces utilizing HTML, JavaScript, and Perl, which interfaced with MS SQL/MySQL database backends.
  • Met with clients and prospective clients to assist them in converting their ideas into project specifications.
  • Worked with the development team to convert client specifications into workable project plans with milestones, deadlines, time estimates, and cost estimates, enabling the timely delivery of projects.
  • Generated management-level reports based on statistical data collected by large-scale web applications.
  • This was a startup company I founded with college associates and professors.
  • Assisted in the development of accounting, project management, and helpdesk operations software for the business.
  • Created business analysis and project management processes to help grow client ideas into project specifications, estimates, and quotes.
  • Developed large and small scale web application interfaces utilizing HTML, JavaScript, and Perl, which interfaced with MS SQL/MySQL database backends. These applications were eventually sold to Online-Access, Inc.
  • Worked as a network technician and assisted in the installation, setup, configuration, and maintenance of co-located customer equipment in the data center.
  • Worked as a desktop service technician, configuring and servicing PCs for over 1,000 company employees.
  • Assisted in the implementation of drive imaging technology and multi-casting, saving over 100 hours of PC build time per month for desktop service technicians.
  • Assisted the LAN/WAN group in the implementation of local area networks and wide area networks throughout Michigan, automating many business processes.
  • Worked part-time in the technical support helpdesk call center, servicing multiple co-location customers as well as public ISP customers.
  • Assisted with the implementation of pipeline flow modeling into the engineering department, allowing for more accurate project calculations and increased cost savings on pipeline projects.
  • Developed and maintained several applications used to automate time-consuming daily tasks, such as gas loss calculations and construction number tracking, saving the engineering group more than 40 hours of work per month.

Work Samples

If you are interested in seeing some samples of work I have done you can check out my portfolio.

Just for Fun

My love for software engineering and development extends beyond my career. I incorporate software into almost all aspects of my life, which has allowed me to hone skills I might not otherwise use in a business environment. It also enables me to explore a broader range of technologies.

I am not a fan of the mindset that says to use a specific language for everything. Just like building a house, there is a myriad of tools available, and each one is better suited for specific tasks. I am adamant about selecting the appropriate tools for the job at hand.

This doesn’t mean I advocate for using something different for every situation; I still consider various aspects of development, such as maintainability, portability, and life cycle, in the engineering process.

  • This site
    • I found that with the amount of work experience I have, it is hard to showcase everything on a two-page résumé. As a compromise, I built this site for those interested in learning more about my professional experience.
  • AI
    • With the advent of large language models and AI, I have made it a priority to learn about the benefits and drawbacks of using AI in both my professional and personal life.
    • I've experimented with AI in various areas, from automated DMs for my son's D&D campaigns to data analysis and other applications related to the workplace.
  • Automated media management tools to maintain and organize media uploads from multiple devices
    • Have you ever run into the issue of having thousands of media files from various sources? Then, try consolidating them into a single store so different family members can access items taken by others (for sharing, etc.). I needed a solution, so I created one.
    • Example: Photos taken and uploaded from multiple phones, tablets, video cameras, DSLR cameras, scanners, etc.
  • File synchronization utilities to synchronize common files across multiple systems
    • My family are all PC users, and it becomes necessary to keep certain things in sync across multiple devices. Before modern synchronization applications were readily available, I would often find myself writing my own software to accomplish these tasks.
    • Example: Keeping all installed game mods synchronized across multiple computer systems.
  • Website deployment applications to help automate the deployment of other personal web properties I maintain.
  • Maintained private fork of VhaBot for Anarchy Online (popular MMO) for several years
    • Complex object oriented model written completely in C#
    • Actively contributed back to the open source project
  • Created/hosted a large scale Neverwinter Nights mod (written in C) which was played by thousands of players
  • Created a Clash of Clans site for my wife's clan which tracked wins/losses and other clan stats and milestones
  • Played and finished Untrusted without assistance

Education

I studied Computer Science and Computer Engineering at
GMI Engineering and Management Institute/Kettering University in Flint, MI

Contact

Feel free to use the form below to reach out to me.

Please view this site in a browser to use the contact form.