https://github.com/ropes/sedaro-nano
https://github.com/ropes/sedaro-nano
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/ropes/sedaro-nano
- Owner: Ropes
- Created: 2023-08-29T18:23:06.000Z (almost 3 years ago)
- Default Branch: analysis
- Last Pushed: 2023-09-02T08:09:41.000Z (almost 3 years ago)
- Last Synced: 2025-02-08T15:16:53.729Z (over 1 year ago)
- Language: Jupyter Notebook
- Homepage:
- Size: 672 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sedaro Nano
The tiniest possible mockup of our system
## Goal
The goal of this mini-project is to gain a better understanding of your ability to **be creative**, **think through problems**, and **solve relevant challenges** related to the engineering roles at Sedaro. This is an opportunity for you to show off your personal strengths. Don't focus on the simple contributions and instead aim to really impress us. To best set expectations, we won't be impressed by an ability to write boilerplate or copy and paste tutorials. A submission that makes us say "Wow, that's SMART!" is far better than one that makes us say "This is really robust.". Get creative, the prompt is intentionally very open-ended.
Within the next `7` days, attempt the following mini-project and return your solution containing the full project (less anything that would be .gitignored such as `node_modules`) and any notes on how to setup and run your specific solution. As important as your solution, we are interested in understanding your thought process and your ability to clearly communicate your approach so a writeup may also be included.
Please note that if you end up getting to a solution that you aren't happy with or that is a dead end, document why and we will call that good enough. Please don't invest too much time. A writeup of why a solution is insufficient and how you might approach it differently often tells us what we need to know.
If you have any questions or issues while you work through this problem or if you get stuck, please contact Bas Welsh at sebastian.welsh@sedarotech.com.
## Setup
1. Clone this repository.
- Please note that **only** cloning via HTTPS is supported
- Please **do not** commit changes to any branch of this repository. If you would like to use git, you may fork this repository to create a private repo of your own
2. Run
- Using a Jupyter-friendly IDE, "Run All" code cells in `sim.ipynb` to produce a `data.js` file
- Open `index.html` in a browser and you should see a plot like the one below
- That's it! ✅
## Your Task
**Review the few files that make up Sedaro Nano, figure out how it works, and then add to it in whatever way best shows off your unique skills + creativity!**
### Some Project Ideas
- Simulator:
- Improve the Q-Range KV Store data structure
- Make the system more generic/extensible
- Make it fast
- Front End:
- Set up a framework like React
- Add cool visualizations and interactivity
- Improve efficiency/caching
- Data:
- Utilize a better persistence layer than a js file
- Do some statistical analysis on the data
- Set up background jobs to preprocess data
- Modeling & Simulation:
- Improve the numerical stability of the simulation functions
- Implement additional modeling and simulation scope
- Analyze the sensitivity to initial conditions
- Etc:
- Port to a language of your choice
- Set up testing
- Containerize
- Whatever you want; these are just suggestions to get you thinking
