Codility code challenges – The initiation

I only discovered Codility a few weeks ago and realised that it is used by quite a number of developers for code challenges, just like Hackerrank and Project Euler. It seems to be the new kid on the block but has become very popular and clearly I’ve been living under a rock not to know what is happening in that world.

I immediately created a new repository where I started committing some solutions to challenges that I saw. These solutions are for practice and may not all be running in O(1), O(log n) or O(log n) time or space as often required. In short, some may be inefficient to enable reasoning towards faster solutions and I’ll keep those old versions to enable my thought story to remain persisted.

The link is https://github.com/malisancube/codility and depending on the challenge source, I should also start having hackerrank, project euler, pramp among others. I already have 25 scripts in this repo. 🙂

I think this is going to be fun. I’ll discuss some of the challenges that I find interesting here. I will mainly use Python and C# as languages. LinqPad and VSCode are the tools of choice. In the process I hope to learn some of the new Python 3.0 syntax.

While I generally like code challenges, I think they miss critical parts of software development, which is Architecture, Teamwork, Work Ethic and other soft skills . I think they should not be solely used to determine if the developer is excellent. They are good to see how the engineer thinks and distills an idea from usually a brute force approach to a better solution and how the handling of edge cases.

If you’re also interested in these kind of things, ping me and we share ideas.


$nr = absint( get_comments_number() ); echo sprintf( _nx( 'Comment ( %1$s )' , 'Comments ( %1$s )' , $nr , 'Title before comment(s) list' , 'tempo' ) , '' . number_format_i18n( $nr ) . '' );