Source code solution to the Shopify - Summer 2018 Internship - Backend Challenge.
NOTE: Our solution has assumes that sortedness of the output json (ie. top-layer keys & internal child_ids) is not required. This decision was made by design for both convenience and optimization (e.g. prepending menus is more efficient in Elixir than appending them). It would of course be trivial to sort the given output at both layers if needed.
This project requires the following Elixir prerequisites to be installed & available in your command-line environment:
From the project directory:
- Install dependencies with
mix deps.get
- Build the command-line application via
mix escript.build
You should now be able to execute the application via:
./shopircruit -c <challenge_id>
where <challenge_id> here would be either 1 or 2 based on the Problem/API specifications given.
This code is under the Apache License 2.0.
If you use or modify shopircruit-S2018, please credit the original author as
- Logan Martel - https://github.com/martelogan