Controls Engineerwith a software engineering edge

I build control systems, end to end.PLC Programming. SCADA/HMI. System Integration.With a software engineering background that brings stronger code, sharper testing, and smarter data.

01 / SELECTED WORK

My Latest Project
Fuel Tank Monitoring & SCADA

Built an integrated fuel-monitoring system for a US Navy application, bringing tank levels, alarm states, and operator displays together through Allen-Bradley PLCs and Ignition.

SHIPBOARD FUEL MONITORING
48 fuel tanksPlanned monitoring capacityMy rolePLC · HMI · Integration
HOW IT WORKS

Tank level signals PLC checks for high / low levels Ignition shows levels and alarms

DR PROCESS EXPLORER
SIMULATED DATA

Fuel tank overview

Six sample tanks from the planned 48-tank system.
Select a tank to explore its level and alarm status.

6 DEMO TANKS
Normal AlarmIllustrative HMI
SELECTED TANKTK-01
62%LEVEL
NORMAL RANGE
0LOW 20HIGH 80100%

Move past a threshold to see the alarm state change.

What I focused on

I built the core PLC, HMI, and data-integration layers, from controller logic and operator displays to Python logging and automated testing tools.

PLC PROGRAMMINGReusable tank logic & alarms

Implemented Structured Text logic with alarm thresholds, delays, hysteresis, and structured tank data.

HMI & INTEGRATIONConnected PLC data to operator displays

Integrated controller tags with Ignition, resolved data-mapping issues, and built reusable tank views.

DATA & VALIDATIONBuilt logging & automated test tools

Created Python clients to log OPC UA readings in PostgreSQL and compare controller outputs against expected results.

About This Demo +

This independent portfolio demonstration uses synthetic data. It does not expose employer code, an operational network, or a live PLC. The hero illustration is conceptual, not the actual rack configuration.

02 / TECHNICAL SKILLS

The tools I use.
The work I do.

From physical PLC hardware to operator screens,
data integration, and automated testing.

01 / PROGRAM

PLC Programming

  • Allen-Bradley ControlLogix
  • Studio 5000
  • Structured Text
  • Add-On Instructions
  • User-Defined Types

Develop modular control logic, organize controller data, and implement programs on physical PLC hardware.

02 / MONITOR

Signals & Alarm Logic

  • 4–20 mA inputs
  • Analog signal processing
  • Alarm thresholds
  • Delay & hysteresis
  • Heartbeat monitoring

Process analog inputs, evaluate alarm conditions, and monitor equipment status and communication health.

03 / VISUALIZE

HMI & SCADA

  • Ignition Gateway
  • Perspective
  • Tag configuration
  • UDT instances
  • Bindings & parameters

Build operator dashboards, equipment detail screens, navigation, and reusable displays driven by controller tags.

04 / CONNECT

Integration & Networking

  • OPC UA
  • PLC-to-Ignition integration
  • Ethernet connectivity
  • Static IP configuration
  • Tag & data-type mapping

Connect the controller, gateway, and data clients; troubleshoot communication and tag-quality issues.

05 / AUTOMATE

Python & Databases

  • Python scripting
  • SQL
  • PostgreSQL
  • OPC UA clients
  • Data logging

Collect equipment readings and store them in a queryable history for review and troubleshooting.

06 / VERIFY

Testing & Diagnostics

  • Expected-vs-actual checks
  • Test automation
  • Live tag inspection
  • Signal tracing
  • Task timing

Check controller behavior and isolate issues across PLC logic, communications, and operator displays.

03 / SOFTWARE ENGINEERING ADVANTAGE

A software background.
A stronger controls engineer.

My software engineering skills help me write better control logic, automate testing, and troubleshoot connected systems.

SOFTWARE SKILL

Software Design & Architecture

Build controls that scale.

I apply reusable data structures and programming patterns to tank logic and Ignition displays.

Why it helpsConsistent designs are easier to extend and maintain.
SOFTWARE SKILL

Debugging & Integration

Troubleshoot across the system

I trace values from PLC tags through communications to the HMI, checking paths and data types.

Why it helpsA systematic approach helps isolate where a problem starts.
SOFTWARE SKILL

Automation & Testing

Automate controls testing

I use Python to collect PLC data and check whether controller outputs match expected results.

Why it helpsRepeatable checks make changes easier to verify.
SOFTWARE SKILL

Data & Databases

Turn equipment data into answers

I use SQL and PostgreSQL to organize logged PLC readings, compare results, and investigate how equipment behaved during a test.

Why it helpsRecorded data makes it easier to trace problems and verify system behavior.
CONTROLS / SCADA / SYSTEM INTEGRATION

Let’s Talk.

Let’s discuss controls engineering, automation,
and opportunities to collaborate.

Send me an email or reach out on LinkedIn.

PHILADELPHIA, PA