How to Improve Your Coding Skills: Lessons Learned from a Code Challenge

Kevin Diesenberg
2 min readFeb 22, 2023

--

As a job seeker, receiving feedback on a code challenge can be both nerve-wracking and informative. It can be easy to take criticism of your work personally, but it’s important to remember that feedback is not a reflection of your worth as a developer, but rather an opportunity to learn and grow.

In the example provided, the feedback is broken down into specific areas of the code challenge, which can be incredibly helpful in understanding where your strengths and weaknesses lie. The first area of improvement mentioned was Architecture Debugging — Brainstorming. The feedback states that some top solutions provided more ideas about what could be causing slow recommendations and described them in detail. It’s important to not only identify potential issues but also explain why they could be causing a problem. This shows a deeper understanding of the underlying code and system architecture.

In the same section, the feedback suggests that solutions that provide concrete debugging steps for the reviewer to follow are preferred. This shows that not only can you identify potential issues, but you also have a clear plan for how to resolve them. Additionally, organizing recommendations into sections can improve readability and make discussion easier. This shows that you can communicate effectively with team members, which is an important skill in any collaborative work environment.

The next area of improvement mentioned is Architecture Debugging — Email a Teammate. In this section, the feedback notes that specific places to look for the issue were provided, which is a good start. However, more top solutions clearly explained why they were making their suggestions. This shows a deeper understanding of the underlying code and can help team members trust your recommendations.

The third area of improvement mentioned is Prorating Subscriptions. The feedback notes that while the code correctly parsed the month parameter into a usable date object and multiplied the number of active users by the daily rate, it only passed 3 out of 12 tests used to validate correctness. This suggests that while the code may work for some cases, it may not work for all cases. Adding more automated tests or test assertions can help verify the correctness and improve the code’s functionality.

Finally, the feedback notes that solutions that include comments to explain the overall approach are preferred. This shows that you are not only focused on writing code that works, but also on making it understandable and maintainable for other developers. Good commenting practices can also save time in the long run by making it easier to debug and modify code.

Overall, the feedback provided is actionable and specific, which is incredibly helpful in understanding areas of strength and weakness. While it can be difficult to receive constructive criticism, it’s important to remember that feedback is an opportunity for growth and development. Incorporating this feedback into future coding challenges and projects can help improve skills and build a stronger understanding of software development best practices.

--

--

Kevin Diesenberg
Kevin Diesenberg

Written by Kevin Diesenberg

Software Engineer | JavaScript | React | Ruby | Rails | SQL | Skydiver | Outdoor Enthusiast | Paramotor Pilot | Cyclist | Edible Mushroom Hunter

Responses (1)