DEV Community

Ivan Delgado
Ivan Delgado

Posted on • Edited on

My Journey into Software Engineering #1: Embracing Mistakes

My journey into embedded software engineering began unexpectedly, filled with challenges and learning opportunities I couldn’t have anticipated. It all started when I stumbled upon a random Craigslist post seeking a software engineer. The job title didn’t mention anything about embedded or firmware engineering, but the description did. Despite having no prior experience in the field, I sent an email anyway. To my surprise, I received a response. They acknowledged my lack of experience but decided to meet with me regardless.

During that first meeting, they asked me a question that left me completely clueless. Instead of feeling discouraged, I felt a surge of motivation. I was eager to learn and take on the challenge. They assigned me a project involving a Raspberry Pi.

I dove in with enthusiasm, but soon became overwhelmed by the task's complexity. I had no idea where to start, and terms like SPI and I2C were completely new to me. It became clear just how much I had to learn about embedded systems.

Luckily, I was familiar with Linux. I had dabbled in distro hopping in college and installed Ubuntu on my old ThinkPad. However, as I began working with the hardware and electronics side of things, things took a turn for the worse.

In my eagerness to make progress, I accidentally short-circuited something with my multimeter while probing the interface board. Smoke filled the air, and I realized I had caused serious damage. It was a humbling moment—a harsh reminder that jumping into electronics without fully understanding the risks can lead to failure.

Despite feeling lost and discouraged, I reminded myself that mistakes are part of the learning process. Each setback offers a chance to grow and improve.

I realized that the path forward would require more research, more questions, and more learning. This was part of the journey—learning to handle failure, seek help, and piece together the knowledge I needed to move forward.

As I continue my journey into embedded software engineering, I’m committed to learning from both my successes and failures. I’ll document my experiences, challenges, and the knowledge I gain along the way. My hope is that my journey will inspire others in similar situations, reminding them that every expert started as a beginner.

P.S. The RPi.GPIO module doesn’t work on the Raspberry Pi 5 due to changes in how the GPIO pins are memory-mapped. Save yourself some time and check out this helpful guide. I used gpiozero to blink an LED using the GPIO pins, and you can find my code for it here.

Image of AssemblyAI tool

Transforming Interviews into Publishable Stories with AssemblyAI

Insightview is a modern web application that streamlines the interview workflow for journalists. By leveraging AssemblyAI's LeMUR and Universal-2 technology, it transforms raw interview recordings into structured, actionable content, dramatically reducing the time from recording to publication.

Key Features:
🎥 Audio/video file upload with real-time preview
🗣️ Advanced transcription with speaker identification
⭐ Automatic highlight extraction of key moments
✍️ AI-powered article draft generation
📤 Export interview's subtitles in VTT format

Read full post

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

👋 Kindness is contagious

Engage with a sea of insights in this enlightening article, highly esteemed within the encouraging DEV Community. Programmers of every skill level are invited to participate and enrich our shared knowledge.

A simple "thank you" can uplift someone's spirits. Express your appreciation in the comments section!

On DEV, sharing knowledge smooths our journey and strengthens our community bonds. Found this useful? A brief thank you to the author can mean a lot.

Okay