Welcome to TalentSprint WE Bootcamp

Calibration Exercises

The following problems are intended to calibrate where you are in your coding journey. These will also serve to explain to you the style and approach expected of you in the bootcamp.

Please attempt all these problems. We will discuss the solutions in the sessions. Typically each problem will have multiple solutions (in each language. That is each problem can be solved in many ways in each language) They will differ in the language feature used, the data structure used and so on. These choices will also have implications on readability, extensibility, resuability, performance and so on. We will discuss these implications too.

Programming Languages

All of you should have one primary language of choice. This will be the language you reach for by default to solve any problem. I recommend that you choose one of C#, C++, Python, Java. I will refer to this as L1. I also refer to this as your goto language.

All of you in addition should work with one more language. If your primary language is Python, this should be one of C#, C++, Java. If your primary language is one of C#, C++, Java then you must choose Python as your second. I will call this language your L2.

Finally, you should get comfortable with one more language. This is the language you want to use to make your future recruiters sit-up and take notice. I recommend one of: Scala, Haskell, Elixir, Go. I will call this language your L3.

So the ideal response to any coding assignment I give is:

  • write your first solution in L1

  • implement it in L2

  • revisit your L1 implementation in the light of L2

  • write the code in L3 applying your lessons from L1 and L2

Indices and tables