Building My First Project with Kiro: A Student's Experience
Source: Dev.to
Introduction
I’m a computer science student who usually gets stuck in tutorial hell. I had an idea for a study‑group coordinator app that could match students based on their courses and schedules, but I never finished projects because I’d spend hours debugging setup issues, wrestling with dependencies, and copying code I didn’t understand from Stack Overflow. When I heard about Kiroween, I decided to try Kiro despite being skeptical about another AI coding tool. I figured I needed a portfolio project anyway, so why not give it a shot.
Vibe Coding with Kiro
What surprised me most was vibe coding. Instead of searching for exact syntax or following tutorials that were almost but not quite what I needed, I just explained what I wanted in plain English. I’d say something like:
“I need a login system with email verification and password requirements.”
Kiro would generate working code I could actually read and modify. At first it felt weird just talking to my IDE instead of knowing exactly what to type, but it removed a lot of friction. When something wasn’t quite right, I could simply say, “that’s not what I meant,” and Kiro would adjust. No more spending three hours on documentation trying to figure out one function.
Using Specs to Document Features
When I started using specs to document my features properly, things got even better. I’d write down what I wanted in an organized way, for example:
- Users can create study groups with a maximum capacity.
- Groups need tags for subjects.
- Only verified students can join.
Kiro would implement these requirements consistently. As someone who usually just starts coding and hopes for the best, being forced to think through features before building them actually made development faster. I wasn’t explaining the same thing five times in different conversations anymore.
Mistakes and Lessons Learned
Sure, I still made mistakes.
- Password handling: I forgot to specify that passwords should be hashed, and Kiro built exactly what I asked for, which meant storing passwords in plain text.
- Database performance: I spent two hours debugging slow queries only to realize I’d asked Kiro to fetch every user record before filtering.
These were my errors in explaining what I needed, not Kiro’s fault. I learned that you still need to understand what you’re building. Kiro isn’t magic; it’s a tool. If you ask for something that technically works but is a terrible idea, it will build it.
Outcome
The biggest change is that I actually finished something. My study‑group app works, it’s deployed, and classmates are using it. The code isn’t perfect and I’m still learning, but I built a real project with:
- User authentication
- Database management
- Matching algorithms
instead of giving up halfway through. I’m not afraid to start new projects anymore because I know that if I can clearly explain what I want to build, I have a tool that can help me build it. Kiro didn’t make me a senior developer, but it gave me enough confidence to keep building instead of staying stuck in tutorials. For a student trying to learn and actually ship projects, that makes all the difference.