From Telecommunications Technician to Full Stack Developer: My Story
From Telecommunications Technician to Full Stack Developer: My Story
Today I want to share something more personal: how I went from being a Telecommunications Technician to a Full Stack Developer while studying Computer Engineering. 🚀
It wasn’t a linear or easy path, but every challenge taught me something valuable. If you’re thinking about changing careers or taking the leap into software development, I hope my story inspires you and helps you make that decision.
📡 My Beginnings: Telecommunications
My first approach to the tech world was through telecommunications. As a Telecommunications Technician, I worked with:
📡 Communication networks - Installation and maintenance of equipment
🔧 Infrastructure - Structured cabling, fiber optics
📶 Transmission systems - Radio links, antennas
🔌 Technical equipment - Routers, switches, telephone exchanges
It was a job I liked: technical, practical, and with constant challenges. I learned to solve problems under pressure, read complex diagrams, and understand how information flows through networks.
But over time, I started to feel something was missing. I saw that the digital world was evolving incredibly fast, and I wanted to be part of that evolution in a more creative and direct way.
💡 The Turning Point
The breaking point came when a client asked me for help automating certain reports. I told them “I don’t know how to program,” but the idea kept spinning in my head.
What if I could create tools? What if instead of just installing and configuring equipment, I could build systems from scratch?
I started researching and discovered Python. I did my first “Hello World” and, although it sounds cliché, something clicked. I realized that:
✅ I could create solutions to real problems with code
✅ There were no limits - If I could imagine it, I could program it
✅ The job market in software development was incredible
✅ I was passionate about that process of solving logical problems
✅ It was self-taught - I could learn at my own pace
That same week I made a decision: I was going to become a programmer.
🎓 Studying and Working at the Same Time
The decision was made, but I had a problem: I needed to keep working. I couldn’t afford to leave everything to study full time.
So I did what many do: I enrolled in Computer Engineering and started studying while working.
The reality was tough:
❌ Waking up at 6 AM, working until 6 PM, going to classes until 10 PM
❌ Weekends dedicated to projects and assignments
❌ Little time for social life or rest
❌ Accumulated fatigue
❌ Constant doubts: “Can I do this?”
But there were also victories:
✅ Every new concept I understood motivated me
✅ My first programs working
✅ Grades improving semester after semester
✅ Projects that made me feel proud
How I Made It Work
1. Extreme organization
I used Google Calendar religiously. I blocked time for each activity: work, classes, study, personal projects.
2. Pomodoro Technique
25 minutes of intense study, 5 minutes of rest. When you arrive tired from work, it’s the only way to maintain concentration.
3. Learning by doing
I didn’t just stay with theory. Every new concept I applied in a mini project. That accelerates learning 10x.
4. Community
I joined study groups, programmer Discord servers, followed developers on Twitter. Networking saved me many times when I was stuck.
5. Conscious sacrifices
I had to say “no” to outings, parties, Netflix series. But I knew it was temporary and I had a clear goal.
📚 My Learning Process
I didn’t follow a structured bootcamp. My learning was more organic and project-based. Here’s my real path:
Phase 1: Fundamentals (3-4 months)
Python as first language
I started with Python because it was recommended as “easy for beginners.” And they were right.
- Variables, loops, conditionals, functions
- Data structures (lists, dictionaries)
- OOP (Object-Oriented Programming)
- File handling
Resources I used:
- Python course on YouTube (free)
- Official Python documentation
- Exercises on HackerRank
- First scripts to automate tasks at my work
Phase 2: Web Development (6 months)
I discovered that what I really liked was creating web applications.
Backend with Django
Django was my introduction to web development. I loved having so much “out of the box”:
- ORM for databases
- Authentication system
- Automatic admin panel
Basic frontend
HTML, CSS, basic JavaScript, Bootstrap. Enough to make functional interfaces.
My first real project: Tuniforme
An online store with Transbank payment gateway. It was my final project for a development course.
Features:
- Inventory management
- User system with roles
- Shopping cart
- Real payment integration
This project taught me MORE than 6 months of theory.
Phase 3: Specialization (ongoing)
With the fundamentals clear, I started to expand:
Modern JavaScript
- ES6+
- React for interactive interfaces
- Node.js for backend in JS
Next.js
When I discovered Next.js, it blew my mind. SSR, SSG, App Router… it was the future.
That’s why I created this blog with Next.js 15 + TypeScript + Tailwind.
Other tools
- Git and GitHub (fundamental)
- Docker for containers
- Power Automate and Power BI (from my previous job)
- REST APIs and service consumption
Constant practice
- LeetCode for algorithms (see my article about LeetCode)
- Personal projects
- Open source contributions
🚀 My First Projects
Projects were my real teacher. Here are the ones that taught me the most:
Project 1: Tuniforme - E-commerce with Django
The challenge: Create a complete online store with real payment system.
What I learned:
- Integration of third-party APIs (Transbank)
- Order status management
- Inventory system with alerts
- Authentication and authorization by roles
- Production deployment
Stack: Python, Django, Bootstrap, PostgreSQL, Transbank API
Status: ✅ In production - View demo
Project 2: Medalblog - Blog with Next.js
The challenge: Create a modern, fast blog with excellent SEO.
What I learned:
- Next.js 15 App Router
- Server Components vs Client Components
- MDX for enriched content
- Contentlayer for content management
- Sitemap and RSS feed generation
- Search system with Kbar
- Comments with Giscus
- Analytics with Umami
Stack: Next.js 15, TypeScript, Tailwind CSS, MDX
Status: ✅ This blog you’re reading
Other Projects
- Automation scripts for my previous job
- REST APIs for practice
- Dashboards with Power BI
- Discord bots for communities
Each project taught me something new and made me a better programmer.
💼 Getting a Job as a Developer
The transition to the work world as a developer was… interesting.
The Challenges
1. Impostor Syndrome
”Am I really a programmer? There’s so much I don’t know…”
This feeling is REAL and COMMON. All developers feel it.
How I overcame it: I focused on what I DID know and kept learning. Nobody knows everything.
2. Competition
The market has many developers. How to stand out being junior?
My strategy:
- Solid portfolio with real projects
- Active blog (demonstrates knowledge)
- GitHub with clean and documented code
- Constant networking
3. Salary Expectations
I came from telecommunications with a certain salary. Would I have to start from scratch?
The reality: The tech market pays well, even juniors with solid projects.
4. Knowledge vs Experience
”We need 3 years of experience” - But if I’m just starting…
My solution: My personal projects WERE my experience. Tuniforme was equivalent to 6 months of real work.
How I Did It
1. Portfolio that speaks for itself
I didn’t wait to have the perfect job. I built projects that demonstrated my skills.
2. Networking
LinkedIn, Twitter, Discord, virtual meetups. Meeting people in the industry opens doors.
3. Apply strategically
I didn’t apply to everything. I looked for companies where my profile fit: startups, companies that valued self-taught people.
4. Interview preparation
- LeetCode for algorithms
- Practice explaining projects
- Have prepared stories about challenges and solutions
5. Learning mindset
In interviews, when I didn’t know something, I said “I haven’t used it, but I can learn it quickly. For example, with Django…”
🎯 Advice for Those Who Want to Make the Change
If you’re thinking about changing careers to software development, here’s my advice based on my real experience:
1. You Don’t Need a Degree (But It Helps)
The reality: Many successful developers are self-taught.
My experience: I’m studying Computer Engineering, but I got work and projects because of my portfolio, not the degree.
My advice: If you can study, do it. It gives you structure and networking. If you can’t, bootcamps and self-learning also work.
2. Build Real Projects, Not Tutorials
Common mistake: Doing 50 tutorials but no own projects.
What works: Do 3-5 tutorials and then build YOUR project from scratch.
Why: In interviews they ask about YOUR projects. “I did the Netflix clone tutorial” doesn’t impress. “I built a store with real payments” does.
3. Learn in Public
What it means: Sharing your learning process.
- Blog with what you learn (like this)
- Twitter with your progress
- GitHub with your code
- LinkedIn with your projects
Benefits:
- Helps you consolidate knowledge
- Build audience
- Recruiters find you
- Help others who are starting
4. Networking is Key
My experience: Many opportunities came from meeting the right person.
How to network:
- Join Discord communities
- Participate in meetups (virtual or in-person)
- Comment on posts from developers you admire
- Help other beginners
- Share your knowledge
5. Specialize, But Not Too Soon
At first: Learn fundamentals in various areas (frontend, backend, databases).
Later: Deepen in what you like most.
My case: I started as a generalist (full stack), and over time I’m specializing more in backend and automation.
6. Clean Code Matters
From the beginning: Learn good practices.
- Descriptive variable names
- Comments when necessary
- Organized structure
- Git with clear commits
Why: In interviews they review your code on GitHub.
7. Be Patient With Yourself
The truth: You won’t learn everything in 3 months.
Realistic timeline:
- 3-6 months: Fundamentals
- 6-12 months: First serious project
- 12-18 months: Job-ready
- 2+ years: Comfortable
My experience: It took me almost 2 years to feel “confident” as a developer.
📈 Where I Am Now
Today, after this journey, I can say I am:
✅ Full Stack Developer with projects in production
✅ Computer Engineering student (final year)
✅ Content creator through this blog
✅ Active member of tech communities
My Current Stack
Frontend:
- React, Next.js
- TypeScript
- Tailwind CSS
- HTML5, CSS3
Backend:
- Python (Django, Flask)
- Basic Node.js
- REST APIs
Databases:
- PostgreSQL
- MySQL
- SQLite
Tools & DevOps:
- Git & GitHub
- Docker (learning)
- Vercel, Render
- VS Code
Other Tools:
- Power Automate
- Power BI
- Postman
- Figma (basic)
Achievements I’m Proud Of
🏆 Tuniforme in production with real users
🏆 This blog with original content
🏆 Automation projects that save hours of work
🏆 Being able to help others who are starting
🏆 Feeling excited every day to learn something new
🚀 My Future Plans
I’m not stopping here. Tech evolves fast and I want to keep growing.
Short Term (6 months)
✅ Finish Computer Engineering
✅ Deepen in Docker and Kubernetes
✅ Contribute more to open source projects
✅ Create more content on this blog
✅ Complete 100 problems on LeetCode
✅ Learn more about software architecture
Medium Term (1-2 years)
✅ Specialize in scalable backend
✅ Learn a second language (Go or Rust)
✅ Create a SaaS from scratch
✅ Speak at some meetup or conference
✅ Mentor junior developers
✅ Get a position in a company that challenges me
Long Term (3-5 years)
✅ Be a reference in some specific area
✅ Have my own successful digital product
✅ Create quality educational content
✅ Maybe start my own tech company
✅ Keep learning (this never ends)
🎓 Lessons Learned
After this journey, these are the most valuable lessons:
1. Learning Never Ends
Technology constantly evolves. Next.js has a new version every 6 months. There’s always something new to learn.
Lesson: Get used to being an eternal student. It’s part of the job.
2. Mistakes Are Your Best Teachers
Every bug I solved taught me something. Every project that failed made me wiser.
Lesson: Don’t fear making mistakes. Embrace errors as learning opportunities.
3. Community Matters
You’re not alone. There are thousands of developers willing to help.
Lesson: Participate in communities. Share your knowledge. Help others. Everything comes back.
4. Projects > Theory
You can read 10 books about React, but until you build a complete app, you don’t really understand it.
Lesson: Learn by doing. Always.
5. Consistency Beats Talent
I’m not the most talented programmer. But I’m consistent. I code almost every day, even if it’s just 30 minutes.
Lesson: Small daily improvements > Big sporadic efforts.
6. Your Background is an Advantage
My experience in telecommunications gave me:
- Network knowledge (useful for backend)
- Problem-solving ability
- Working under pressure
- Attention to detail
Lesson: Your previous experience is NOT an obstacle. It’s your differentiator.
7. Impostor Syndrome Doesn’t Go Away
Even now, sometimes I think “What if I’m not that good?”
Lesson: We all feel it. It’s a sign you’re still growing. Learn to live with it.
💬 Final Message
If you made it this far, you’re probably considering making the change to software development. My message is simple: DO IT.
It won’t be easy. There will be days of frustration, impossible bugs, impostor syndrome, fatigue.
But it will be worth it. The satisfaction of seeing your code working, creating something from scratch, solving a complex problem… is priceless.
Remember:
✅ Every senior programmer was a beginner at some point
✅ Mistakes are part of the process, not failures
✅ The tech community is incredible, ask for help
✅ Your background is your advantage, not your disadvantage
✅ Consistency beats natural talent
✅ It’s never too late to start
Your Next Step
If you’re starting:
- Choose a language (Python or JavaScript are good starts)
- Take a basic course (there are thousands free)
- Build something simple (calculator, to-do list)
- Share what you learn (blog, Twitter, whatever)
- Join communities of developers
If you’re already on the path:
- Keep building projects
- Don’t stop learning
- Connect with other developers
- Apply to jobs even if you think you’re not ready
- Trust your process
📞 Let’s Connect
My story continues, and I’d love for you to be part of it. If my story resonated with you, if you’re in a similar process, or if you just want to talk about tech:
Find me at:
- 🐙 GitHub: @Medalcode
- 💼 LinkedIn: medalcode
- 🐦 Twitter: @medalcode
- 📧 Email: jonatthan.medalla@gmail.com
More content like this:
- 📝 Why Every Programmer Should Have a Blog?
- 💪 Tips for New Programmers Part 1
- 🛠️ Tools I Use: LeetCode
💬 Your Turn
Are you in the process of career transition? What’s the hardest part for you? Do you have questions about how I made the change?
Leave me a comment below. I read all and respond personally. 👇
And if this article helped you, share it with someone who’s thinking about making the change. Together we build a more inclusive and supportive tech community.
See you in the code! 🚀
Last update: December 23, 2025