rsumankumar

is a comprehensive book on getting a job at a top tech company, while focuses on dev interviews and does this for PMs.
CareerCup's interview videos give you a real-life look at technical interviews. In these unscripted videos, watch how other candidates handle tough questions and how the interviewer thinks about their performance.
Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. And, we use fellow engineers as our resume reviewers, so you can be sure that we "get" what you're saying.
Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. All our interviewers have worked for Microsoft, Google or Amazon, you know you'll get a true-to-life experience.
Very nice design approach. Just putting another perspective here ..
- rsumankumar January 23, 2018Two assumptions : Every call history is stored in DB table. Average call is to be calculated per user.
As the question says average has to be calculated per day, I assume a simple trigger/ation listener that gets invoked at 11:55PM everday, reads the db table (that stores call history along with start/end times) and returns the average call for that day for that user.
boundary cases - What if call is ended without hitting end button in which case trigger can skip to be called. Or for those false calls which are just made and disconnected. Lastly those calls for which (due to some system error/conflict/downtime) the call is not recorded in the DB. Lastly, if two calls are made from same user account from two different skype applications (from two different devices).
For these boundary scenarios, there can be a redundancy in the system to monitor on a 'per call' basis and keep recording the duration for every call and keep calculating the average-so-far and consolidate towards end of day.
Please let me know your opinion.