r/JavaProgramming • u/surya_bonagiri • 14d ago
Charles Schwab – Java Interview Experience
Yesterday, I attended a Java interview at Charles Schwab.
The interview was scheduled in two parts.
1. Coding/Assessment Round
In the first half, I was given a problem statement to build a simple Appointment Scheduler Java API.
The requirements were:
Appointments should not clash with each other.
Appointments should be booked correctly without conflicts.
The application should work for multiple customers at the same time.
The solution should handle concurrency without deadlocks.
The assessment was focused on building a simple Java API project around appointment scheduling.
Also, they offered a good and proper lunch in the cafeteria, which was a nice experience.
2. Interview Round
After completing the assessment, I was called for an interview round. They reviewed the assessment in the interview room itself and then asked me the following questions.
About myself
Tell me about yourself.
Why are you looking for a job change?
Production debugging
Suppose there is an issue in production, but the same issue cannot be reproduced in any of the lower environments. How would you start debugging it?
Suppose I want to change the production logging level on the fly from ERROR to DEBUG and then change it back to ERROR. How would you do that?
Microservices logging
Suppose there are three microservices communicating with each other. How would you implement logging across these services?
If there is a failure in Service 2, how would you identify where exactly the failure happened?
Trace ID / Span ID
How would you use a Trace ID and Span ID?
How would you use the Trace ID to identify where an issue occurred and which service failed?
Server restart / lost logs
Suppose a server restarted and all the error logs were lost. How would you investigate what happened?
Why do servers restart automatically?
Once completing this round.there is another round of DSA & HR.
Overall, the interview was focused heavily on Java, concurrency, production debugging, logging, microservices, and distributed tracing.