About Me
My software engineering journey began in industrial automation, writing assembly code for Atmel microcontrollers to control rotor balancing machines. This hands-on experience taught me the thrill of seeing code directly manipulate physical machinery, like balancing massive train wheel axles.
Discovering Stack Overflow, Git, and GitHub was transformative, revealing the power of collaborative problem-solving and open-source development. These platforms became invaluable resources for learning and growth. My fascination with SWEBOK (Software Engineering Body of Knowledge) deepened my understanding of software engineering principles, though I later realized real-world development often demands flexibility beyond any single framework.
After graduation, I developed NPAPI browser plugins in C++ for BMW and Mercedes infotainment systems. Debugging on shared hardware prototypes without traditional inputs pushed me to deploy emulation solutions and platform-dependent code combined with unit testing. This period also introduced me to CI/CD with Jenkins, version control systems, and the importance of teamwork.
My programming journey evolved through C++, Jython, Python 2, Ruby on Rails, and JavaScript, shaping my full-stack development skills. Docker and CI/CD practices revolutionized my approach to deployment, while React and TypeScript transformed my frontend development perspective. A brief return to Python allowed me to apply years of accumulated wisdom.
From assembly code controlling machinery to modern web applications, each phase of my career has taught me valuable lessons. Recent industry shifts, including layoffs and AI advancements, have prompted me to think beyond technology, focusing more on business outcomes and the future of work.
Today, I continue to grow as a developer, driven by the ever-changing nature of the field. The challenges of hardware constraints, the collaborative spirit of open source, and the structured principles of software engineering guide my work. The constant evolution of technology keeps the field exciting, with endless opportunities to learn and solve problems in better ways.