Career

Becoming a Developer, One Project at a Time

Shaquib Imdad
4 min read0 views
Translucent sage glass folds illuminated against a deep green background

I didn’t become a developer in a single moment. It happened gradually: through a first pull request, an unfamiliar codebase, and projects that asked more of me than I knew how to do at the time.

By the time I joined Cognizant as a Programmer Analyst Trainee, those small experiences had begun to connect. This is a look back at the internships and personal projects that brought me there—and the lessons I want to carry into the next stage of my career.

The most useful thing I learned was how to keep learning while building something real.

Learning inside a team

My internships gave me something tutorials alone couldn’t: a chance to see how software takes shape when other people depend on it.

DeepThought: the foundations of collaboration

During four months working remotely with DeepThought Growth Management System, I began using Git as part of a team. Version control became more than a place to save code; it was a way to coordinate changes and understand what other developers were building.

That experience gave me an early appreciation for clear communication. Writing code is one part of the work. Making that code understandable to someone else is another.

IPX: finding my footing on the web

My next internship was a two-month remote role at IPX, focused on Next.js development and GitHub workflows. It helped me connect the features of a modern web framework with the day-to-day process of developing an application.

I was learning to think beyond an individual component and pay more attention to how the pieces of a project fit together.

Magicshift: working with unfamiliar tools

At Magicshift, where I spent more than a year in a hybrid setting, my work included Grafana and Shopify’s Polaris UI system. The range of tools pushed me to get comfortable entering a project without already knowing every part of its stack.

Working on real projects made the learning concrete. Each new tool had a purpose, and understanding that purpose mattered as much as learning its API.

Building a practice of my own

Alongside those roles, I built personal projects to explore ideas and put unfamiliar technologies to use. Each project gave me a different kind of problem to think through.

  • Dash Spotify brought together React, Next.js, and Django to display Spotify listening data.
  • wQchat used React Native and Firebase for a real-time chat experience.
  • Clash Metrics explored dashboards and external data through React and the Clash of Clans API.
  • My personal blog paired Next.js with GitHub’s GraphQL API.
  • Daemon Device Info took me into Android device information and real-time system data.

These projects weren’t separate from my development as an engineer. They were a place to practice, make decisions, and discover the next thing I needed to understand.

Stepping into a full-time role

Those experiences led to a role at Cognizant as a Programmer Analyst Trainee, working in Application Development & Maintenance with .NET and Angular.

It was a new context for the habits I had been developing: reading existing code, learning the tools around me, and contributing within a team. Moving into enterprise development also widened my view of what full-stack work could involve.

Four lessons I’m taking forward

1. Keep learning close to the work

A framework becomes easier to understand when there is a concrete problem in front of you. Personal projects and internships gave my learning direction and a reason to keep going.

2. Give ideas a working form

Building a small application reveals questions that reading about it may not. My projects helped me move from recognizing a concept to making decisions with it.

3. Stay open to different stacks

Moving between web, mobile, and enterprise tools taught me to be less attached to any one technology. Familiarity helps, but so does a willingness to start learning again.

4. Treat communication as part of engineering

Software is shared work. Git workflows, collaboration, and explaining decisions all belong alongside the code—not outside it.

The next chapter

As of writing this in March 2025, I’m looking forward to growing into my role at Cognizant, strengthening my full-stack skills, and contributing to more complex projects.

If you’re at the beginning of a similar journey, my experience offers one simple reminder: you don’t need to see the entire path before taking the next step. Build something, learn from the people around you, and give yourself room to improve.

KEEP THE THREAD GOING

Up next.