From The Challenges - Spotify Client
Exploring the software engineering lessons we can learn from the solutions I've seen.
Hi this is John with this week’s Coding Challenge.
🙏 Thank you for being one of the 79,142 software developers who have subscribed, I’m honoured to have you as a reader. 🎉
If there is a Coding Challenge you’d like to see, please let me know by replying to this email📧
Welcome To Coding Challenges - From The Challenges!
In this Coding Challenges “from the challenges” newsletter I’m sharing some of the common mistakes I see software engineers make when tackling the Coding Challenges.
I’m sharing both the mistakes people make and some thoughts on how you can you avoid making the same mistakes when taking on the coding challenges or when writing software professionally. Sometimes we have to make mistakes to learn from them, somethings we can learn from other people’s mistakes, then make our own new ones! 😀
Recapping The Spotify Client Coding Challenge
In the build your own Spotify client coding challenge the goal was to write your own Spotify Client using the Spotify API.
it’s an ideal coding challenge for a frontend developer or anyone who whats a laugh at the terrible GUIs I build (see the screenshots in the coding challenge).
If You Enjoy Coding Challenges Here Are Three Ways You Can Help Support It
Refer a friend or colleague to the newsletter. 🙏
Sign up for a paid subscription - think of it as buying me a coffee ☕️ twice a month, with the bonus that you also get 20% off any of my courses.
Buy one of my courses that walk you through a Coding Challenge.
Five Common Mistakes Software Engineers Make Solving the Spotify Client Coding Challenge
I’ve pulled together this list of common mistakes from the hundreds of submissions I’ve been sent privately and the many shared in the Coding Challenges Shared Solutions GitHub Repo.
Mistake 1 - Not Deploying
This is a great project to use as a demonstration of your work, so why not deploy it and have people, hiring managers in particular be able to see it in action?
Mistake 2 - Credentials in the Repo
Be careful not to push any credentials used in your software into a Github repo. Always think carefully about security and err on the side of caution.
If you’re new to application security, I’d suggest setting aside some time to learn about it and a good place to start would be the OWASP Cheat Sheet Series, after that check the rest of the main OWASP website.
Mistake 3 - Not Handling Error
When you call and API, be sure to handle any errors it might return. Check the documentation for the API and carefully read the errors section, then ensure you’ve considered what your application should do if the error occurs. Where possible ensure you have tests to verify the behaviour, otherwise later changes to the code may stop the error handling working.
Mistake 4 - Not Adding Documentation
This seems to be a mistake that I pick out over and over again.
A README in your repo doesn’t have to be long, but it should contain the basics of what tech stack is used, what the project does and how to use it.
An interviewer or hiring manager looking at your work / a take home task they’ve sent you will appreciate it if you do this, so try to make a habit of it.
It really helps if your repo makes it clear either what the tech stack is or how to clone, build (if applicable) and run the repo in clear simple steps. Those steps should not include or reference paths that exist only on your local machine.
Mistake 5 - Not Building On The Project
This was a relatively short coding challenge, the Spotify’s API offers a lot more, it would be great to build on the project and use it to learn about other APIs and gain experience using them.
An obvious extension is to add on the Spotify playlist backup project.
Request for Feedback
I’m writing these coding challenges and this new from the challenges series to help you develop your skills as a software engineer based on how I’ve approached my own personal learning and development.
What works for me, might not be the best way for you - so if you have suggestions for how I can make these challenges more useful to you and others, please get in touch and let me know. All feedback greatly appreciated.
You can reach me on Bluesky, LinkedIn or through SubStack
Thanks and happy coding!
John
P.S. If You Enjoy Coding Challenges Here Are Four Ways You Can Help Support It
Refer a friend or colleague to the newsletter. 🙏
Sign up for a paid subscription - think of it as buying me a coffee ☕️ twice a month, with the bonus that you also get 20% off any of my courses.
Buy one of my courses that walk you through a Coding Challenge.
Subscribe to the Coding Challenges YouTube channel!