Last active
June 2, 2023 16:00
-
-
Save hexfusion/0596b051e857030b6b7cc907241ac1aa to your computer and use it in GitHub Desktop.
Interview Reference Materials
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Introduction. A couple of minutes about what you’re most interested in and excited about at ava labs and crypto in general. | |
- Tell me about your previous most exciting task. | |
- Tell me about a tech project you’ve worked on in your spare time. | |
- Tell me about NodeJs event loop. | |
- Implement API to serve crypto prices in NodeJS. | |
───────────────────────────┐ | |
┌─>│ timers │ | |
│ └─────────────┬─────────────┘ | |
│ ┌─────────────┴─────────────┐ | |
│ │ pending callbacks │ | |
│ └─────────────┬─────────────┘ | |
│ ┌─────────────┴─────────────┐ | |
│ │ idle, prepare │ | |
│ └─────────────┬─────────────┘ ┌───────────────┐ | |
│ ┌─────────────┴─────────────┐ │ incoming: │ | |
│ │ poll │<─────┤ connections, │ | |
│ └─────────────┬─────────────┘ │ data, etc. │ | |
│ ┌─────────────┴─────────────┐ └───────────────┘ | |
│ │ check │ | |
│ └─────────────┬─────────────┘ | |
│ ┌─────────────┴─────────────┐ | |
└──┤ close callbacks │ | |
└───────────────────────────┘ | |
ref. https://nodejs.org/en/docs/guides/event-loop-timers-and-nexttick/ | |
# Phases Overview | |
timers: this phase executes callbacks scheduled by setTimeout() and setInterval(). | |
pending callbacks: executes I/O callbacks deferred to the next loop iteration. | |
idle, prepare: only used internally. | |
poll: retrieve new I/O events; execute I/O related callbacks (almost all with the exception of close callbacks, the ones | |
scheduled by timers, and setImmediate()); node will block here when appropriate. | |
check: setImmediate() callbacks are invoked here. | |
close callbacks: some close callbacks, e.g. socket.on('close', ...). | |
codeshare: https://codeshare.io/ | |
# nodejs | |
https://github.com/noamsauerutley/breadth-first-search/ | |
https://levelup.gitconnected.com/finding-the-shortest-path-in-javascript-pt-1-breadth-first-search-67ae4653dbec | |
# Query Planner | |
# EXPLAIN command | |
# Inner and Outer Join | |
What is the difference between partitioning and sharding in PostgreSQL? | |
An Overview of Sharding & Partitioning | Hazelcast | |
What Is the Difference between Sharding and Partitioning? Sharding and partitioning are both about breaking up a large data set into smaller subsets. The difference is that sharding implies the data is spread across multiple computers while partitioning does not. | |
/* | |
tree | |
10 | |
/ \ | |
5 16 | |
/ \ / \ | |
1 8 12 18 | |
*/ | |
// javascript representation of the above tree | |
let tree = { | |
/* ? */ | |
}; | |
let BreadthFirstSearch = (tree, root, searchValue) => {}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
BFS vs DFS