Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

The full Java life: What does a software architect really do all day?

For the architect who engages, this work is anything but abstract

  • Print
  • Feedback

Page 3 of 5

There are a few impressive tools that have started to answer these challenges. I've been pretty impressed with Grunt and Yeoman and I even made the pitch to GFS to abandon Maven for Yeoman; at least for the web UI. I got the impression that ditching Maven might be a bit too far for tools that aren't even a year old yet. So I started making a Maven plugin to pull this all together. There are Maven plugins to handle Compass and Closure, but they don't provide a complete solution that can even modify the HTML development versus production and also provide live-reload functionality. This has actually been a wonderful experience writing this Maven plugin, which of course is written in Java.

Maybe soon I'll be able to convince management to allow me to give this back to the open source community.

Figure 2. Bruce talks architecture with Joe Sremba, an infrastructure specialist at GFS.

Matt Heusser: How long have you been an architect? What were you working on a year ago?

Bruce Brouwer: I've been an application architect for eight years now. I made the jump from senior programmer to architect when I moved to GFS.

My previous big project, which I was working on a year ago, was the transition to Google Apps. This was a real learning experience for me as well. I had this grand idea of synchronizing the legacy calendar with Google Calendar during the transition. I used the Google APIs from Java along with Spring Integration to make it all happen. At least for a while. After a few serious glitches, I had to admit that it wasn't worth the risk. Being both the architect and a developer on that project helped me keep the real world in perspective.

"We've had to draw a line in the sand for what is and is not appropriate to use Google for when integrating with our existing systems. It can be difficult when you are forced to temper some of that enthusiasm. "

Google brings a whole new world of possibilities to GFS. We are only starting to feel its impact in the way we design our systems. I've already had plenty of conversations with people who want to use Google because it is the shiny new toy. We've had to draw a line in the sand for what is and is not appropriate to use Google for when integrating with our existing systems. It can be difficult when you are forced to temper some of that enthusiasm.

Matt Heusser: As an architect, you've reached a level that only a small percentage of programmers achieve. Do you have advice for programmers starting out in their career?

Bruce Brouwer: I love it when new programmers come up with an idea to challenge the current status quo. Usually they want to use some new tool to make a task easier. It is when this happens that I can help them look at the bigger picture. Oftentimes that means pointing out the problems with bringing in that tool. Talking through the problems sometimes forces the new programmer to open their eyes to larger issues.

So my advice is to a new programmer is to go ahead and challenge some ideas. Find a senior programmer or architect that you can use as a mentor and voice your idea. Likely the idea won't pan out but you will learn a lot by finding out why you're wrong, not just that you're wrong. But remember, too, that senior programmers and architects can suffer from myopia and you might just find an idea worth pursuing.

  • Print
  • Feedback

Resources

The full Java life: Career interviews with working Java developers on JavaWorld: