{"id":21436775,"url":"https://github.com/modfin/modfin-onsite-tech-scaffold","last_synced_at":"2025-10-24T15:36:29.196Z","repository":{"id":106893070,"uuid":"493237210","full_name":"modfin/modfin-onsite-tech-scaffold","owner":"modfin","description":null,"archived":false,"fork":false,"pushed_at":"2022-05-24T11:39:24.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-23T09:33:58.961Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/modfin.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-17T12:16:24.000Z","updated_at":"2022-05-17T12:16:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"ef878454-cce4-4288-ba00-4a6f3ee60f9a","html_url":"https://github.com/modfin/modfin-onsite-tech-scaffold","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fmodfin-onsite-tech-scaffold","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fmodfin-onsite-tech-scaffold/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fmodfin-onsite-tech-scaffold/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fmodfin-onsite-tech-scaffold/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/modfin","download_url":"https://codeload.github.com/modfin/modfin-onsite-tech-scaffold/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243945764,"owners_count":20372928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-23T00:15:29.586Z","updated_at":"2025-10-24T15:36:24.175Z","avatar_url":"https://github.com/modfin.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Modfin Onsite Tech Scaffold\n\nThis is an example repo of how the computer aided part of Modular Finance onsite tech interview is carried out.\n\nThe scaffold is written for command line input/output to be as language agnostic as possible.\n\n### Typical progression\n\nThe coding challenges are in the form of CLI style programs that will then be tested.\n\nCandidates are free to bring their own computers if they want and will get access to a similar repo as this one, but with actual meaningful tests.\n\nThree example programs (\"solutions\") can be viewed in this repo:\n\n* [00_js.js](00_js.js)\n* [01_sh.sh](01_sh.sh)\n* [02_go.go](02_go.go)\n\nthese have accompanying tests:\n\n* [test/00_js_test.bats](test/00_js_test.bats)\n* [test/01_sh_test.bats](test/01_sh_test.bats)\n* [test/02_go_test.bats](test/02_go_test.bats)\n\nSolutions can be specified as env vars in [.env](.env) or referencing the executables directly in their respective test.\n\nFor the actual interview, programs will typically be required to handle the following:\n\n* Reading arguments and input files (i.e. `./mysolution input.txt`)\n* Supporting flags/options (i.e. `./mysolution --country-filter=SE input.txt`)\n* Writing files or outputting to stdout/stderr\n\nSo make sure to brush up your i/o game :)\n\n### Setup\n\nThis repo contains git submodules: use  \n```sh\ngit submodule init\ngit submodule update\n```\nto download the testing framework\n\n### Running the tests\n\n`./run_tests.sh` runs all tests in the `test/` directory. Can you spot and fix the error?\n\n### Run a specific test\n\nTests are expected to reside in [test/](test/) and have the naming convention `xx_\u003cname\u003e_test.bats`. To run use `./run_test.sh \u003cname\u003e`. Each test expect there to be an environment variable in [.env](.env) specifying how to start the program. This should be named as `\u003cNAME\u003e_CMD`.\n\n## Rules\n\nYou are free to use search engines, stackoverflow etc and any other helpful tooling. However, you should be able to reason about your code so copy\u0026paste of entire solutions is probably not a good idea.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmodfin%2Fmodfin-onsite-tech-scaffold","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmodfin%2Fmodfin-onsite-tech-scaffold","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmodfin%2Fmodfin-onsite-tech-scaffold/lists"}