05 October 2006

Java Developers Need To Understand Networking

As I mentioned, when I interview candidates, I ask a series of networking questions.

Tonight I transitioned a JBoss service off of a VMware instance and onto real hardware. To make things easier, we swapped the IP addresses of the VMware instance and real hardware (no messy DNS TTLs to worry about).

When co-ordinating this move, I asked to have a network guy around, "just in case someone needs to flush an ARP cache". Nobody was quite sure if we would actually need to do this.

The transition was extremely smooth, and half way through, our NetOp guy chimed in letting us now that he indeed needed to flush the ARP cache of the routers. Had we not flushed the cache, things could've been messy. It would have cleared up eventually, and had we not been prepared we would have just been puzzled for a little bit.

I feel that even when developing within a no-sharp-edges universe like a J2EE container, it's important to be vaguely aware of how an application is communicating with the world around it and a lot of Java developers these days sorely lack in this domain of knowledge.

0 comments: