Ho presentato la mia candidatura online. La procedura ha richiesto una settimana. Ho sostenuto un colloquio presso Logz.io (Tel Aviv) nel mese di set 2024
Colloquio
First, I had a phone call with HR, followed by an introductory interview with the backend director over the phone. After that, I went to their office for an on-site interview. I completed a 1.5-hour task independently on my computer, then presented a demo of my solution and answered questions about it.
Domande di colloquio [1]
Domanda 1
Interview Question
You’re a software engineer, you’re tasked with implementing a service registry and a load-balancer. We provide the interfaces below.
Write in your preferred JVM language that implements the following:
Interfaces
interface LoadBalancer {
fun selectServer(): Server?
}
interface ServiceRegistry {
fun registerServer(server: Server): Boolean
fun deregisterServer(server: Server): Boolean
fun getServers(): List
}
data class Server(val id: String, val address: String)
Load balancer and service registry should be implemented as two HTTP REST servers while calls from one to another should be done via HTTP.
Tasks:
Implement the ServiceRegistry and LoadBalancer interfaces. The load-balancer should have two flavors of balancing algorithm: One is round-robin and the other is random selection.
Prepare a demo with curl / postman / other http tool to demonstrate the flow.
Notes:
You can use whatever library that you want.
You are allowed to use any external tool that might help you, including Google / Stackoverflow / ChatGPT etc..
Time limits: 1h 30m