Q: Given your commissions batch system, what if the input file has 10 times the trade vol, but you still need to finish the batch in 4 hours?
A: I spent more than 2 years in both systems (zed and GS) —
* identical pipelines with a load balancer to turn streams on and off. Each stream has enough capacity to take on entire input vol.
* partitioning by region, office, acct etc
Q: how do you split the 10-mil trade file into multiple files?
Q: how do you prevent out of memory in a large database-driven system?
A: distributed cache
A: processing by chunks. I think P/L and merge sort can use this
A: partitioning into premises
A: push the high volume processing into db with stored procs
A: informatica probably is built for large volume
Q: say you have a lot (perhaps below a million) of shortlived JMS clients. Each sends requests and disappear, and reappears seconds (or more) later to expect responses from MOM. Obviously you can’t maintain that many queues. Also security is important so shared topic and multicast are insecure.
A: dynamic queues
Q: you are designing an API for other people. Part of it is a method returning a list of some data. Argument is a long list of input parameters, but the number of parameters is unknown. What data types do u use for arg and return?
A: I would use a Map and return a List
Q: As an API creator, suppose your method returns a List normally, but can also end up with nothing to return. So what kind of thing do you return?
Q: how do you handle exceptions? Do you use more checked or unchecked exceptions.
Q: any experience with JDBC tuning?
Q: any experience with model-driven frameworks or eclipse RCP?
Q: what are the latest java concurrent features?
A: i only know the 1.5 features…
Q: sleep() vs wait()
Q: final, finally and finalize