Summary

I am a solution architect and full stack developer with over 10 years of experience. I work across application development, cloud infrastructure, and security, specializing in SOLID, clean code, and unit and integration testing. I raise delivery quality through automation and advocate for simple, maintainable architecture.

Technologies

Work Experience

  1. Solution Architect

    Sep 2023 – Present

    Mad Mobile, Tampa, FLRestaurant and Retail Software

    • Standardize build automation, Snyk security testing, unit and integration tests, code review, release versioning, and deployment automation across old and new applications
    • Rewrite ShopCPQ in NestJS, replacing MongoDB queues with RabbitMQ and in-memory timers with Kubernetes jobs
    • Make JSDoc type safety and unit test coverage standard for JSRunner implementation repositories
    • Guide integration choices across n8n, Prismatic, and NestJS while supporting retail customers such as Knitwell Group and West Marine
    • Carry OAuth research for Concierge through to an implementation decision, and steer Concierge toward faster client integration, including Concierge AI
    • Move Neo toward reproducible builds and deployments
    • Partner with the Cloud team on production ownership, with a clear split between prod and non-prod and explicit access controls
    • Support Multi-Location Reporting, Enterprise Solutions, and products including CAKE, MenuPad, and Concierge
    • Mentor retail engineers and advocate for simple, maintainable architecture in design decisions
  2. Senior Software Developer (Contractor)

    Jan 2019 – Present

    Baha'i National Center, Wilmette, ILNot-For-Profit Religious Organization

    • Design automatic API documentation from unit test execution
    • Create SAML Identify Provider on existing authentication system
    • Develop and maintain Azure Functions, ASP.NET Core/MVC and SOAP services (C#)
    • Encourage best practices (e.g. SOLID, clean code, etc) and use of DI for IoC in .NET
    • Optimize REST services from controller to database via LINQ and EF Core
    • Convert UI pages from jQuery to React and JavaScript to TypeScript
    • Consolidate source code repositories and CI/CD solutions for automated testing/linting
    • Automate builds using Azure DevOps Build and Release Pipelines
    • Integrate ARM templates to streamline deployments
    • Alert and troubleshoot using Azure App Insights' KQL (Kusto Query Language)
    • Update stored procedures (SQL Server) and write SQL unit tests to verify functionality
  3. Senior Software Developer (Contractor)

    Jun 2021 – Present

    Flexsible, Tampa, FLSmart Contract Development Services

    • Create Smart Contract using Solidity and HardHat including automated unit tests
    • Reduce gas by implementing cloning of Smart Contracts
    • Troubleshoot Hyperledger FireFly dynamic creation of supernodes
    • Investigate Proof of Concept for Binance Smart Chain real time notifications
    • Implement Smart Contracts using both Truffle and Hardhat (Solidity)
    • Automate CI/CD using GitHub Actions and AWS CloudFormation for NodeJS apps
    • Provide sample PHP for submitting signed token transfer requests to Ethereum
  4. Senior Software Developer

    Jul 2019 – Jul 2021

    PODS, Clearwater, FLMoving and Storage

    • Decouple legacy WCF based applications from Microsoft AX 2009 to enable smooth upgrade from Microsoft AX (C#)
    • Troubleshoot issues related to performance and caching (Redis)
    • Track down source code for legacy applications for which exact source could not be identified (C#, Visual Basic)
    • Refactor common code into Nuget packages published on Sonatype Nexus via Bitbucket pipelines (DevOps, C#)
    • Automate integration tests with on-premise TFS 2017 (Powershell)
    • Create templates for Azure DevOps pipeline automation
    • Participate in PCI DSS gap remediation
  5. Senior Software Developer

    Sep 2015 – Jul 2019

    Applicant Insight / NoMoreForms, New Port Richey, FLBackground Investigation and Applicant Processing

    • Debug and diagnose obscure race conditions in various environments (JavaScript, Java, SQL)
    • Maintain and upgrade legacy Java based systems while launching new systems using .NET (C#, XUnit, Angular, TypeScript)
    • Model automated containerized deployment strategies (VirtualBox, VMware Workstation, Docker)
    • Integrate credit card / ACH payment system to allow applicants to pre-pay client specified fees (Java, C#)
    • Create rule based system for automated appointment of insurance agents (C#)
    • Implement unit testing for SQL functions
    • Script application deployment using TDD (Powershell, Pester)
    • Improve Java coding practices by implementing custom logging, unit testing, and static code analysis (slf4j, junit4, junit5, ErrorProne, SonarQube)
    • Create Gradle build scripts for legacy Java applications with custom tasks for local deployment, build versions, and packaging (Java, Gradle, Groovy)
    • Tweak legacy apps written with PowerBuilder in PowerScript
  6. Software Architect (Part-Time)

    Jul 2015 – Jan 2019

    Qualityze Inc., Tampa, FLQualityze Systems for Regulated Industries

    • Implement file conversion using Salesforce Platform Event and Heroku (Java)
    • Research managed package automation to scratch orgs (Salesforce DX, Ant)
    • Build Quality System as Salesforce managed package (Apex, VisualForce)
    • Architect and implement Salesforce managed package secure feature manager
    • Implement PDF manipulation using Java running on Heroku uploading to various salesforce orgs (Java, PdfBox, Apex)
    • Notify using unobtrusive messages and Salesforce cometD (WebSocket) messaging
    • Create method to perform VisualForce injection to increase flexibility of Salesforce managed package (VisualForce)
    • Diagnose slow pages in Salesforce and design method to reduce load time
    • Design deployment process around github and lack of automation in Salesforce
  7. Software Developer (Contractor)

    Dec 2018 – Jan 2019

    iReward.io, Trinity, FLBlockchain Reward System

    • Create blockchain reward system on TRON Network (C#, Typescript, Angular)
  8. Software Engineer

    Jan 2013 – Sep 2015

    CAE USA Inc, Tampa, FLMilitary Training Simulation with Active Security Clearance

    • Enhance Ant Contrib cpptasks to generate Visual Studio .sln file and desired .vcproj version to enable source code analysis (Java)
    • Deploy and maintained central build automation within secured IT environment (Opscode Chef)
    • Implement wrapper over single Magnetic Variation model for multiple languages (Ada, C, C++)
    • Create Visual Studio solution wizard to streamline adoption of software best practices (JavaScript)
    • Support multiple projects simultaneously; not the norm for recent hires (C++, C, Ada with Linux)
    • Write Wireshark dissector for network communication with USMC Tactical Environment (Lua)
    • Identify and implement a database to combine multiple lists of software assets (SQL, VBA) and convert database access to MS SQL and ASP.NET MVC (C#)
    • Participate in numerous Kaizen workshops focusing on subjects ranging from software development best practices to identifying tools for saving money
    • Coordinate and present training for software engineers on Automated Testing, Static Code Analysis, and Software Product Lines (Fitnesse, GoogleTest, Selenium)
    • Develop tool for converting Ant XML build instructions to Visual Studio format (C++)
    • Team lead for deployment and institutionalizing internally developed Software Production Line tool
  9. Quality Assurance and Regulatory Affairs Manager / Software Developer

    Dec 2003 – Jan 2013

    IsoAid, LLC, Port Richey, FLMedical Device Manufacturer

    • Research solutions for validation, auditing, documentation and manufacturing improvements
    • Compare and purchase equipment for sterilization, validation, sterile sealing, and automation
    • Maintain and upgrade multiple companywide databases from MS Access to MS SQL Server (VBA)
    • Optimize Iodine-125 and Palladium-103 decay and tracking systems in MS Access and Excel (VBA)
    • Perform both software and equipment validation on critical systems
    • Develop and execute validation protocol for electronic signatures
    • Manage simultaneous deadlines for regulatory and quality goals
    • Upgrade Quality Assurance System to allow paperless availability
    • Submit and receive 510(k) submissions to the FDA
    • Submit and receive medical license applications to Health Canada and EU notified body
    • Create and execute sterilization validation protocols for both Ethylene Oxide and Steam sterilizers

Education

Training

Additional Information

TDD: I am a proponent of Test Driven Development. I have written tests in Java, C#, C++ Python, Ruby, JavaScript, and even Powershell and SQL. I developed and performed training in automated testing for over 100 developers.

Application Security: In addition to fixing various common sense vulnerabilities (like unauthenticated access and SQL injection) I have begun applying skills learned at various security related training courses.

Spoken Languages: Native English and Spanish speaker

Stack Overflow