Lifen Backend Challenge

Looking for a job? Check out our open positions.

Guidelines

  • clone this repo (do not fork it)
  • solve the levels in ascending order in the language of your choosing
  • commit your code at the end of each level
  • once you are done, ping someone from Lifen (ideally via our jobs page)

You can have a look at the higher levels, but please do the simplest thing that could work for the level you're currently solving.

Disclaimer: the levels become more complex over time, so you will probably have to re-use some code and adapt it to the new requirements.

A good way to solve this is by using OOP and adding new layers of abstraction only when they become necessary. Don't hesitate to write shameless code at first, and then refactor it in the next levels.

For higher levels we are interested in seeing code that is:

  • clean
  • extensible
  • robust (don't overlook edge cases, use exceptions where needed, ...)

Please also keep in mind that those challenges are not only about coding, there are also about facing novelty, complexity and communication with other developers who are not necessarily experts on the language you have chosen.

Ready ? -> let's start !