On branch master
Changes to be committed: modified: Questions_Answers.md
This commit is contained in:
parent
315aa55ab7
commit
0cd721909b
@ -1,5 +1,6 @@
|
|||||||
## Level 1 Questions
|
## Level 1 Questions
|
||||||
1. How would you prove the code is correct?
|
1. How would you prove the code is correct?
|
||||||
|
|
||||||
To prove the code is correct I suppose I could set up a test environment
|
To prove the code is correct I suppose I could set up a test environment
|
||||||
where I could account for all connections and run tests like
|
where I could account for all connections and run tests like
|
||||||
ssh connections, dhclient or dig (dns) connections, nmap port
|
ssh connections, dhclient or dig (dns) connections, nmap port
|
||||||
@ -7,25 +8,30 @@
|
|||||||
appear in the program's output.
|
appear in the program's output.
|
||||||
|
|
||||||
2. How would you make this solution better?
|
2. How would you make this solution better?
|
||||||
|
|
||||||
I'd improve the solution by making the functions more focused on
|
I'd improve the solution by making the functions more focused on
|
||||||
specific tasks, improving how I present the interface of each
|
specific tasks, improving how I present the interface of each
|
||||||
function to each other to more specifically eliminate type
|
function to each other to more specifically eliminate type
|
||||||
or value errors. I'd also allot more time to complete the task
|
or value errors. I'd also allot more time to complete the task
|
||||||
since I wasn't able to find enough before the deadline.
|
since I wasn't able to find enough before the deadline.
|
||||||
3. Is it possible for this program to miss a connection?
|
3. Is it possible for this program to miss a connection?
|
||||||
|
|
||||||
Yes, if the connection is brief enough so as not to last more than 10
|
Yes, if the connection is brief enough so as not to last more than 10
|
||||||
seconds and thereby be missed by the most recent read of the
|
seconds and thereby be missed by the most recent read of the
|
||||||
/proc/net/tcp file
|
/proc/net/tcp file
|
||||||
4. If you weren't following these requirements, how would you solve the problem of logging every new connection?
|
4. If you weren't following these requirements, how would you solve the problem of logging every new connection?
|
||||||
|
|
||||||
I would likely find a solution that leverages inotify to detect any change to the file and then read it,
|
I would likely find a solution that leverages inotify to detect any change to the file and then read it,
|
||||||
rather than polling it every 10 seconds.
|
rather than polling it every 10 seconds.
|
||||||
|
|
||||||
## Level 2 Questions
|
## Level 2 Questions
|
||||||
1. Why did you choose 'x' to write the build automation?
|
1. Why did you choose 'x' to write the build automation?
|
||||||
|
|
||||||
I would simply choose bash, as it's what I'm most familiar with and it
|
I would simply choose bash, as it's what I'm most familiar with and it
|
||||||
can reliably use the go build tools as well as invoke testing
|
can reliably use the go build tools as well as invoke testing
|
||||||
systems like kvm/qemu, docker/podman and the like.
|
systems like kvm/qemu, docker/podman and the like.
|
||||||
2. Is there anything else you would test if you had more time?
|
2. Is there anything else you would test if you had more time?
|
||||||
|
|
||||||
If I had more time I'd spend it fleshing out my testing as outlined above
|
If I had more time I'd spend it fleshing out my testing as outlined above
|
||||||
and doing a more thorough job of structuring my data in the way
|
and doing a more thorough job of structuring my data in the way
|
||||||
that I've modeled it in my head - the choice of go definitely
|
that I've modeled it in my head - the choice of go definitely
|
||||||
|
Loading…
Reference in New Issue
Block a user