Morteza Sherafati's Work | ContraWork by Morteza SherafatiMorteza Sherafati
C++ & Qt Software Engineer | Desktop Applications
- $1k+
- Earned
- 1x
- Hired
- 1
- Followers
Overview
An evolving enterprise ERP system built on a Qt/C++ application framework at Farapox Co. The system provides modular business management functionality with a Python scripting layer for custom business logic. My work focused on building core reusable UI components, migrating the build system, and establishing documentation standards.
Contributions
Component & Module Design
Designed and implemented several foundational UI components that became part of the shared Applications Framework used across all ERP modules:
Vertical Grid — a custom high-performance grid widget supporting large tabular datasets with virtual scrolling, column configuration, and inline editing
Master Detail Dialogs — a reusable dialog pattern linking master record navigation (First/Prior/Next/Last/Page) with a detail view, export/import, and inline scripting — used throughout the ERP for entities like Transfer Requests, Orders, and Inventory
Build System Migration
Led the full migration of all projects from QMake to CMake:
Unified build configuration across the monorepo
Enabled out-of-source builds and improved dependency management
Reduced onboarding friction for new developers
Documentation
Documented all developed components using Doxygen and UML diagrams, producing a reference that allowed team members to adopt shared components without tribal knowledge.
Tech Stack
Qt / C++ — application framework and all UI components
CMake — build system
Python — business logic scripting layer embedded in the ERP runtime
Doxygen / UML — documentation HMI Framework is a two-part system built entirely from the ground up using Qt and Python, combining a visual design environment with a real-time runtime engine. It empowers engineers to design complete industrial processes through a drag-and-drop interface and run them against live SCADA equipment. As a Software Developer at Modje Niroo Company, I immersed myself in the research and development of automation and SCADA systems within the electrical industry, exploring the latest practical technologies utilized by related systems. During my tenure, I accomplished the following:
Technology Research and Strategy Design: Conducted in-depth research on automation and SCADA systems, staying abreast of the latest industry technologies. Analyzed potential solutions for the electrical automation industry, contributing to the design of high-level documents and major strategic plans.
Project Implementation: Took a hands-on approach in implementing two major projects, namely HMI Designer and HMI Player, starting from the ground up. Leveraged my expertise in Qt and integrated web technologies such as HTML, JavaScript, and CSS to create intuitive and efficient Human-Machine Interface (HMI) solutions.
Collaborative Agile Development: Engaged in Agile methodologies to foster a collaborative development environment. Worked closely with cross-functional teams to ensure alignment with project goals and timely delivery of high-quality solutions. Maintained and developed new features for the industrial-scale project Protein Maker, used in customer laboratories across multiple countries for protein purification. The system controls and monitors devices such as pumps, servo motors, UV sensors, and calculates syringe states and gantry positions while generating real-time charts and a deck view for the user.
I created the CMake build system, migrated the project from Qt 5.3 to Qt 5.15, and integrated an improved logging system using log4qt, a crash dump collector, and a Web API.
Fixed numerous bugs and developed new features for both the 24-channel and 6-channel configurations over a period of 4 years.