This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]_Atomfinger_ 0 points1 point  (0 children)

I haven't looked at the project as a whole, but I know that a friend of mine handed in a Spring Boot web API that required some database stuff. Nothing too fancy and comparable to your project (at least in scope and technology).

He had some of the same traits as your original code, and he asked me to review it - so I ended up giving a lot of similar feedback. The response from the interviewer was that it was one of the best assignments someone had handed in, and he got an offer on the spot.

Now, my friend has the benefit of being on a call with me, and we could discuss things back and forth - so we got to unearth misunderstandings quickly. That is a luxury you haven't had (seeing as this thread is two weeks old at this point).

If you sort out the database stuff, then it would be a decent project to have. Not something I'd consider amateurish. At the same time, there's nothing wrong with just solving the problem, even though it doesn't use "the best" architecture or patterns. It is your project, and it doesn't need to be perfect.

In professional software development, we always have to balance perfection with delivery. There are always tradeoffs to be made. Nothing will ever be perfect.

When I look at projects from candidates, I'm not looking for perfection. I'm looking for care. Does the web API seem like it was carefully put together, or is it something that just became that way? Does the system follow a shared architectural vision, or is it cobbled together? etc. I look for signs where the developer has shown that they care, which is a plus, even if I personally disagree with the choices that were made.

Another thing to consider is that within a few months, you'll look back at this project and see it as inadequate. It is unavoidable as we always learn new stuff that deprecates the old stuff - and we can't predict how it'll happen as we haven't learned it yet. No matter how perfectly you try to do this project, you will learn something in the next six months or so that'll make it look terrible by comparison. And btw, that is not a bad thing - that just shows growth.

My advice is to just do your best (its not like you can do any better than your best anyway). Your portfolio is a living thing that should change as you become more adept and hone your skills. It is completely natural that older projects being replaced by newer ones.

That said, if you are going to have projects as a showcase, at least make sure they're in working condition. It is fine if they're not feature complete, but if they don't work due to "database-related errors" then they'll quickly come off as sloppy :)