From Control Engineering to Smart Contracts: My Unconventional Programming Journey

From my first system models in MATLAB to deploying on EVM networks, my path has been anything but conventional. I’ve journeyed from mathematical abstraction to code living on the blockchain, facing technical and personal challenges that taught me to embrace both my strengths and my limitations.

5/8/20244 min read

A gold coin with the Ethereum logo embossed on it is placed against a dark background with scattered black rectangles around it. The word 'ethereum' is inscribed beneath the logo.
A gold coin with the Ethereum logo embossed on it is placed against a dark background with scattered black rectangles around it. The word 'ethereum' is inscribed beneath the logo.

“Learning one line of code at a time.”

📖 Chapter 1: From MATLAB & Simulink to the IoT Dream

At UNAL, I discovered the power of applied mathematics:

  • Modeling and controlling systems with MATLAB and Simulink showed me how to understand any process. It felt like being Neo, seeing the mathematical bits of the real world and grasping the concept of the Matrix in modeling.

  • Programming PLCs in Ladder brought me close to industrial automation; I realized how so many amazing products reach our homes almost like magic.

  • Using C/C++ on Arduino and PIC, I built home-automation prototypes: a blackout controller with a motor and RF control via Android. I felt like Dexter in his lab doing experiments at home.

  • I dreamed of making affordable home automation for everyone, but hardware commoditization and macroeconomic pressures pushed me to pivot to software.

🔒 Chapter 2: Networking, Cybersecurity & Vulnerabilities

Reliability comes from anticipating risks:

  • At the UNAL Cisco Academy, I studied computer networks and cybersecurity. Suddenly, hacker movies made sense when I recognized IP addresses and how the Internet really works.

  • I designed and tested industrial communication infrastructure, helping the energy sector modernize by replacing countless copper cables with a single switch and network cable carrying vast amounts of data.

  • My master’s thesis analyzed vulnerabilities in digital substations, driving home the lesson that without security, no system can be trusted.

⚡ Chapter 3: The Leap to Solidity & Web3

My first blockchain project was energy tokenization with UNAL. There, I learned:

  • With Solidity you forget traditional infrastructure: you deploy directly on-chain. For newcomers, it feels like magic, hiding a lot of underlying complexity.

  • The same smart contract can run on any EVM network thanks to open-source standards (ERC‑20, ERC‑721, ERC‑1155). These standards enabled the mass adoption of Web3 and an unprecedented wave of innovation.

  • It’s not all rosy—bad actors emerged too—but knowledge brings awareness that this space is real and impactful.

  • Design and security go hand in hand: each line of code must be simple (for cost efficiency), powerful, and secure from the outset, and the language itself is built to reinforce these principles.

🌐 Chapter 4: Taming the Front-End for DApps

A smart contract without a UI is like a message in a bottle:

  • I learned HTML, CSS, and JavaScript to craft clean interfaces.

  • I believe everything is visual, and a great interface sells itself. It was exciting to showcase ideas before the back-end was even finished.

  • I integrated Web3 with web3.js, web3.py, and ethers.js, allowing smart contracts to live in websites, apps, and any environment that supports these libraries.

  • I tried React but progressed slowly; I recognized my strength lies in decentralized logic and collaborating with front-end experts—basic HTML, CSS, and JS suffice for prototypes, while advanced frameworks need specialists.

🐍 Chapter 5: Python, Raspberry Pi & Unergy

Python became one of my go-to tools:

  • I built IoT prototypes with Raspberry Pi: controlling relays, lights, and motors, scanning remote signals and replaying them programmatically.

  • In production for Unergy, I connected smart contracts to solar panel data. Investors in a solar crowdfunding project could see and receive real-time earnings from energy generation. Transparency is key, and direct device integration provided that trust.

  • I conducted data analysis for Medellín’s City Hall, transforming large datasets into actionable insights: matching job candidates to ideal openings. I also explored RPA and web scraping for automated data collection.

🎮 Chapter 6: Creative Explorations

I’ve always wanted to push boundaries:

  • I created games with CopperCube, leveraging templates and YouTube tutorials to build fun experiences quickly.

  • I experimented with Unreal Engine, though its learning curve was steep for me at the time.

  • I used Meshroom for photogrammetry to fuse digital and physical worlds, tapping into the NFT and play-to-earn trends—turning my niece into a flying unicorn-shooting fairy in 3D!

☁️ Chapter 7: DevOps, Cloud & Best Practices at Wenia

At Wenia, I realized scalability lives in the cloud:

  • I set up CI/CD pipelines with Docker and AWS—though it’s not my strongest suit, I lean on teammates and keep learning every day.

  • I explored Elixir microservices; progress was slow, but I learned to orchestrate specialized talent to integrate my architectural vision.

  • Using Hardhat, I built unit tests and migrations, leveling up my Web3 workflows with automated deployments, proxy-based smart contract upgrades, and more.

  • I integrated Fireblocks and MPC for secure custody and transaction signing, designing robust multi-signature policies with initiators and approvers segmented by team and task.

🏆 Strengths

My technical and personal pillars:

  • Solidity: I feel right at home building secure, scalable DApps. I prototype fast and continuously learn optimizations and new best practices. I enjoy interactive educational exercises where students submit answers on-chain and earn an NFT reward.

  • Python: Ideal for IoT, data pipelines, bots, and image analysis—its versatility powers everything from network interactions to analytics.

  • JavaScript: Bridges smart contracts and user experiences, enabling intuitive front-end and Node.js back-end integrations.

🔍 Weaknesses & Opportunities

I know my limits and rely on collaboration:

  • 3D Development: CopperCube worked, but Unreal Engine awaits expert hands. I focus on core concepts, then engage specialists.

  • Front-End Frameworks: HTML, CSS, and JS cover prototypes; React and Vue need dedicated developers.

  • DevOps & Microservices: Basic AWS, Docker, and Elixir knowledge—my superpower is orchestrating teams and learning alongside experts.

🤔 Final Reflection

I started in Administrative Engineering seeking economic prosperity. In a microeconomics course, they said “utility = happiness,” and I misread it as “money = happiness,” leaving me disillusioned. Later, a macroeconomics deep dive made me nervous: interest rates, monetary policies, and global crises could derail projects beyond my control.

These experiences led me to introspection and a path toward challenges in mathematics, networks, circuits, and energy. In Control Engineering, I learned to model and master all types of systems. My first love was Web3 with Solidity; then I reinforced Web2 to complete the cycle.

Today, I know macroeconomics conditions every project—especially in crypto: understanding market cycles and global factors is as critical as writing secure smart contracts. I apply my technical background to the financial sector, convinced that money isn’t happiness, but it sustains our experiences.

This journey of wins, failures, and lessons has prepared me for what’s next. And I’m just getting started…