- Introduction
- Recent Accomplishments
- Project Showcases
- Tech Profile - skills, languages, platforms, etc.
- Technology Executive
- Cloud Architect
- Operational Team Lead with deep hands on experience
- Software Craftsmanship and Design Patterns
- Ability to navigate complex situations with minimum information to provide clarity, direction and an actionable path forward
I enjoy helping companies and teams build software through improving team processes, delivering business value utilizing my 20 year experience in software design principles.
- Avon Lake High School - C# and API Development, held session with Avon Lake High School AP Computer Science students (grades 10, 11, and 12). We covered API development with Blazor and C#, talked about careers in the field and topics such as client/server, http verbs, status codes, and data modeling. While we didn't get a chance to finish our homework forecaster based on the NOAA weather API, it was good to be back in the classroom after my days at Microsoft's TEALS.
- Team Leadership and Cloud migration: Instituted software development best practices, cloud migration and future architecture for a 200M corporation; leading to faster delivery of new features and higher code quality.
- Recent project launch for large distributed application, being the driving force behind: API architecture, container orchestration, data structures, framework and platform evaluations, customer identity and access management, Agile methodologies, CI/CD processes, and client-side frameworks React/NextJS to support the rapid growth and expansion of the 200M corporation.
- Modernization of a cloud-native, line-of-business application for a Fortune 500 electric utility company, utilizing Azure Cloud Infrastructure, Microsoft Entra B2B and B2C, Angular, including custom JWT/OAuth2 implementation, and .NET following Domain Driven Design. Successfully completed within the target budget of 1M, achieved through effective prioritization, constant client communication and scope management.
- Experience in React Native for web and mobile development of SaaS company.
- Speaker THAT Conference - Azure DevOps for Agencies
- Defining and driving company goals and exemplifying company values through example, 1 on 1s, and creating a safe, healthy, and desirable place of employment for all employees.
- Mentorship of junior developers in coding best practices, design patterns, and setting proper example of how to be a professional developer.
Perfect Game USA is an organization dedicated to the development and promotion of youth baseball. They host travel team tournaments and individual showcases, to promote and provide valuable exposure for young athletes and to gain exposure to college coaches and MLB scouts.
Prior to Bennett Adelson’s involvement, Perfect Game lacked effective internal software development, delivery, poor code quality, little to no QA and no Agile processes or ceremonies. The team often faced urgent issues without the necessary system processes or guidance.
To address these concerns the engagement was divided into three phases:
- Phase I: Migration from Rackspace to Azure for all business-critical applications and databases
- Phase II: Software Development Practices and Procedures, Agile transformation, and Continuous Integration and Continuous Deployment
- Phase III: Defining the Future State, Software Architecture
The infrastructure footprint at Rackspace was comprised of several large dedicated virtual machines that were expensive to maintain, were running outdated operating systems and applications, and were not configured for reliability and scalability. As such, business applications were migrated to Azure app services and core database services were migrated to Azure SQL Managed Instance.
Workflows
Software development processes for the entire 10-person development team had numerous bad practices. For example, the team was deploying code to production directly from their workstations. Code was not routinely merged into a main branch for other developers.
Perfect Game USA over the years has put an enormous effort into the software that runs their business without a long-term vision. Bennett Adelson worked with Perfect Game to define the future tech stack and direction.
Technology Roadmapping · Microsoft Azure · Technology Leadership · Agile Methodologies · C# · .NET Core · Application Modernization · Application Programming Interfaces (API) · NextJS · Strangler Fig · Domain Driven Design
FirstEnergy is a Fortune 500 utility company operating in the Northeast region of the United States. The Pennsylvania Customer Assistance Program (PCAP) is designed to help income qualified residential customers maintain electric service and eliminate their past due balance. The legacy application was written in the late 90s and due to its age was only used internally by FirstEnergy employees. The public facing online enrollment was handled and managed by an external third-party Dollar Energy Fund. FirstEnergy was looking to bring the application in-house to provide updated application security, increased systems integrations with backend systems, and greater visibility into customer issues and eliminate duplicated processes and data entry.
Since the legacy application was written approximately two decades ago, and since the system workflow, data processing and customer service were largely handled by an external third party uncovering or discovering the core business logic was extremely difficult. An extended period was dedicated to requirements with activities such as Event Storming and in-depth team interviews were conducted, striking a balance between agile and waterfall for discovery.
Once the system boundaries were understood, the team adopted Domain-Driven Design as a software paradigm. Team members consisted of both Bennett Adelson members, a senior developer, UI/UX designer, and cloud architect as well as members of FirstEnergy developer staff and a project manager. The application had a very complex, time sensitive workflow process and data management requirements.
Following this principle, this allowed the team to move in a very agile fashion with a focus on just-in-time requirement gathering. Additionally, the budget and scope allowed for frequent refactoring. Having the latitude to rework core sections as the team learned more about the system and how it should behave was crucial for the success of the project.
Cross-functional Team Leadership · SAP Integration · Angular · C# · Domain-Driven Design (DDD) · Cloud Computing · Application Modernization · .NET Core · Application Programming Interfaces (API)
A listing of recent technologies and other items to help give additional context. Hardly an exhaustive list.
- .NET (Core)
- Typescript
- Angular
- React Native
- NextJS
- Reverse Proxy YARP
- Strangler Fig
- .NET Framework -> .NET
- Current State vs Future State
- Roadmapping
- Dependency mapping
- Monolith, Modular Monolith, Microservices
- Migration and modernization tools, Azure Migrate
- Azure Enterprize Architecture / Azure Landing Zones
- Domain Driven Design
- Minimum Apis
- GraphQL
- CI/CD pipelines (DevSecOps)
- API / Microservces
- Events/Messaging
- Mobile development
- Docker
- Azure Aspire
- git, branching strategies
- Event Storming
- CQRS
- Mediator
- OAuth
- OpenID Connect - OICD
- EntraAD, MSAL
- RBAC
- OSWAP
- General best practices as applied to Software Engineering
- XUnit, NUnit
- Grafana k6 (load test)
- Playwright
- Azure Certified verify
- Containers
- Storage
- Compute
- Security
- Cost Analysis
- Governance
- Compliance
- PaaS, Serverless
- Kubernetes
- Azure Container Apps
- Function Apps, Logic Apps
- Observability, Application Insights, Log Application Workspaces, OpenTelemetry
- Resiliency
- Familiar with ETL, Snowflake, Azure Data Factory (ADF), Databricks
- Python (non-professional)
- Microsoft SQL Server
- Datawarehouse, Data Lake
- PostgreSQL
- Mongo/Cosmos
- Oracle / API integrations
- TSQL, stored procedures, indexes, maintenance tasks
- Performance tuning
- Powershell
- Bash / zSh
- winget / Chocolatey
- Ionic / Capacitor
- React Native
- Expo
- Azure DevOps
- Github
- Supabase
- Atlassian - Jira, Confluence
- Azure Communication Services, Twillo / Sendgrid
- Figma
- SMTP, Sendgrid, Twillo, Azure Communication Services
- Authorize.Net
- Stripe
- PayPal
- Shopify
- BigCommerce
- nopCommerce
- Wordpress
- Drupal
- Static file
- Azure DevOps - yaml, classic
- ARM/Bicep
- azd
- Terraform (experimental only)
- Github Actions
- Jenkins
- DevSecOps, GitHub Advanced Security, Coverity Black Duck
- Firewalls
- Azure FrontDoor, WAF
- Networking, subnets, vnets
- VPN
- DNS
- Virtual machines, setup, configure
- Routing
- Domain name registration
- Nameserver configuration
- EOS Entrepreneurial Operating System