Separate trading logic and utility classes from API specific classes and build modular system that can plug any API in the future (or multiple API from different brokers and data providers).
I'm on Interactive Brokers as well, and although the Java API sometimes shows some weird behavior, overall it just works fine and reliable. Make sure you sign up for the Yahoo email discussion group as well, lots of info there too.
Hey brother, this response is years later but i think you're better off swing trading long options (by hand) in a cash account to start out. Once you can write a strategy to automate that, you're golden.
As a beginner, you can try Dukascopy. They provide JForex, a java development environment with cloud deployment. It is a CFD broker and provides lots of tick level data to backtest. After you get something that looks good there, you can move to IB.