Figure out buoyancy and propulsion first! Everything else can build off of that.
Make sure to look at previous year designs and see which mode of propulsion works best.
Submerged motors are risky to use.
Be active with the communications protocol, don't be afraid to advocate for changes that work best for your team.
Debug communication abilities with other teams frequently to isolate bugs.
Serial and keyboard events can mess up timing, remove print statements when finalizing code.
Get trained in Lab 64 (EE building), it's better than PRL in more ways than you can imagine and super easy.