Available For Work
Local Time ( IST )
PLC++: Modernizing Industrial Automation IDEs

Role
Full Stack Engineer
Focus
Modernization
Innovation
Strategic Thinking
Technical Challenge
Company
RAUT Automatic
Location
Ukraine, Kyiv
Industry
PLC manufacturer, Industrial Automation
Technology
Desktop, Hardware, (I)IoT
Intro
As a Full-Stack Engineer and system designer, I proposed and led the modernization of a legacy PLC programming IDE, transforming it from a Delphi 7-based graphical-only environment into a multi-language, modern platform. I was the driving force behind the vision to integrate structured text (ST) support - including Pascal, C, and Basic dialects - and I architected the entire system design. My work included developing a custom AST-based translator, implementing advanced watchdog-safe execution modes, and introducing real-time online debugging capabilities. This initiative elevated both the developer experience and the product’s market competitiveness, marking a significant leap forward for the company’s automation offerings.
Results
We successfully launched a new PLC device with advanced capabilities, which became a bestseller and significantly strengthened the company’s market position. Alongside the hardware release, we modernized the legacy IDE, enabling engineers to program existing PLCs using both graphical and text-based methods—greatly improving flexibility and developer productivity. The company also introduced a series of paid internal seminars to support adoption of the new system, where I served as a lecturer, teaching engineers how to fully utilize the enhanced capabilities.
10000+
New model PLCs sold
20000+
New version IDEs downloaded
200+
Engineers certified
⚙️ Key Challenges & Strategic Solutions
1. Introducing Text-Based Programming Support
Challenge:
The existing PLC IDE only supported graphical Function Block Diagram (FBD) programming, which limited developer expressiveness and flexibility. There was no support for modern structured text (ST) languages, putting the product behind competitors.
Solutions:
I proposed and led the initiative to integrate text-based programming into the IDE. I designed and implemented a translator for ST blocks using an AST-based parser, supporting Pascal, C, and Basic dialects. These blocks were treated as standard FBD components, enabling users to combine graphical and textual programming seamlessly.
2. Watchdog Constraints and Risk of Runtime Freezes
Challenge:
PLC programs could get stuck in infinite loops or long-running operations, violating watchdog timers and jeopardizing system reliability.
Solutions:
I introduced two execution modes for ST blocks. The default “controlled” mode distributed long-running loops over multiple PLC scans. The “uncontrolled” mode allowed for continuous execution with a user-defined timeout. This design ensured stability without limiting developer capability
3. Lack of Online Debugging Capabilities
Challenge:
The IDE and PLCs lacked tools for real-time program monitoring and debugging, making development and troubleshooting inefficient.
Solutions:
For the new generation of PLCs, I architected and implemented an online debugging system. I inserted dynamic control checkpoints at strategic points in user-written and standard blocks during compilation, enabling traceable execution without runtime performance penalties.
4. Memory Constraints for Large Programs
Challenge:
Adding debugging checkpoints increased program size, which became problematic for large-scale deployments on resource-limited devices.
Solutions:
I created a compilation-time flag to disable all debugging logic for production builds. This “no-debug” mode removed the checkpoints entirely, enabling large programs to be deployed efficiently while still allowing developers to switch to debug mode when needed.
🧠 Technical Leadership
Product Modernization Visionary
Identified strategic gaps in the legacy IDE and proposed a modernization plan, including the integration of text-based programming — significantly advancing the competitiveness of the company’s toolchain.
System Design & Architecture Ownership
Designed the architecture for the ST translator, online debugging framework, and dual-mode execution logic. Took full ownership of implementation and integration into the IDE and PLC firmware pipeline.
Support for New Hardware Platform
Led the software adaptation effort for a next-gen PLC, enabling key features like online debugging and larger program support that were aligned with hardware improvements.
Knowledge Sharing & Enablement
Delivered internal seminars to educate engineers on the new IDE capabilities and best practices, supporting company-wide adoption of modern development workflows.
Stack
Conclusion
Although the company ultimately closed, this project resulted in a highly efficient and technically sophisticated SDK that successfully bridged browser-based systems with backend gRPC services. The work not only showcased advanced engineering — such as cutting processing time from 1 second to 17 milliseconds — but also delivered meaningful value to integration partners, who were able to evaluate and integrate the solution into their pipelines. This project serves as a testament to the R&D team’s ability to tackle challenging problems, push technical boundaries, and create production-ready solutions with real-world applicability and impact.
@2025, All Rights Reserved