In the software development world, we often talk only about successes: the job landed, the project launched, the client acquired.
Much less frequently do we share those experiences that
do not end the way we hoped, but still leave us with something extremely valuable.
I want to tell you about my recent experience participating in a selection process.
It didn't end with a hire, but it resulted in something just as important:
concrete growth as a developer.
And I believe these kinds of experiences deserve to be shared.
The Selection Process
It all started when I was contacted by a company interested in my developer profile.
The process was structured into several phases:
- First introductory interview
- Technical project to develop
- Publishing the project on GitHub
- Second technical interview
- Live code review and project modifications
During the first interview, we discussed my background, the technologies I use, and my overall approach to development.
Afterward, I was assigned
a technical project with specific requirements and a few features labeled as "bonuses."
As a developer, I decided to tackle the project not just to meet the bare minimum requirements, but to
push myself a bit further by implementing some of those extra features as well.
The Developed Project
The project was published on GitHub and remains publicly available.
During development, I worked on several interesting technical aspects, including:
- Using Docker for the development environment
- Code management through GitHub
- Developing a WordPress plugin
- Analyzing image metadata
- Extracting information such as EXIF data, device details, and weather conditions at the time the photo was taken
Additionally, I built an image display system featuring
two different layouts:
The goal was to build a flexible structure that could be easily utilized within WordPress.
The Technical Interview
After completing the project, I took part in a
second technical interview.
During this meeting, I had to:
- Explain the technical choices I made
- Justify the architecture used
- Describe how the code operates
- Make real-time changes to the project
It was a highly stimulating session because it allowed me to discuss technical and design aspects face-to-face.
Regardless of the final outcome, it was an experience that helped me
test my skills in a real-world scenario.
The Final Outcome
At the end of the selection process, the company decided to move forward with
a different type of profile.
It wasn't a rejection tied to the quality of my work, but rather a different strategic direction the company chose to pursue at this time.
And this is an important distinction.
Because often, in the professional world, a "no"
does not necessarily mean you aren't good enough.
It simply means that
the company's needs at that specific moment are different.
My Takeaways from This Experience
Looking back, this process left me with much more than I could have imagined.
Specifically:
- I leveled up my skills with Docker
- I improved my project management workflows on GitHub
- I gained a deeper understanding of how image metadata works
- I developed a complete technical project that serves as a public portfolio piece
- I engaged in a real-world technical debate regarding architectural choices and code
In other words, I gained something incredibly valuable:
hands-on experience.
Sometimes the Value Lies in the Journey
The final outcome doesn't always define the value of an experience.
Sometimes the true result is everything we learn along the way.
Today, this project is on my GitHub, it is part of my portfolio, and it represents another step forward in my growth as a developer.
Above all, it reminds me of an important truth:
Even when a door doesn't open, the path that led us there can leave us much better prepared for the next one.
Conclusion
If you are currently going through a selection process or working on a technical assignment for an interview, my advice is simple:
Treat it as an opportunity to grow.
Because regardless of the final result, everything you learn along the way
remains yours.
And often, that is exactly what will make the difference next time around.