Channels ▼


Developer Diaries

Summit Meetings

John Kodumal

Employer: Coverity

Job: Advanced Technology Developer

DDJ: What's your job at Coverity?

JK: I work in the Office of the CTO. I spend most of my time developing new prototypes, but I'm also involved in fostering our intellectual property and shaping our future product direction.

DDJ: What do you like about your job?

JK: It's pretty much the perfect job for me—I have a research background in static analysis and wanted to continue my work in a more practical setting. At Coverity, I get to apply my ideas to real software. That's the ultimate litmus test in this area—a lot of ideas work well in theory, but they're just not practical or scalable. Our software has to run on codebases that are tens of millions of lines of code or bigger. That requires unconventional thinking sometimes.

DDJ: What do you find challenging about your job?

JK: When I explain to people that our software finds bugs automatically, the usual response is "Oh, so it's like lint?" The previous generation of bug-finding tools like lint aren't based on static analysis and have set the bar pretty low. Even some of the more recent tools are just glorified pattern-matching algorithms. It can be tough to get past this initial skepticism.

DDJ: What have you found that makes your job easier?

JK: Good development tools and good open-source software. Good tools can dramatically improve productivity. Some of my favorites are distributed version-control systems like Mercurial, Git, or BitKeeper, and continuous integration tools like Hudson. We also use a lot of open-source components. I've become a big fan of both StringTemplate (a templating engine) and Glazed Lists (a list transformation toolkit). Both of these libraries do simple tasks, but they do them extraordinarily well. We try to give back to the community by providing the Scan service (, which gives open-source developers free access to Prevent.

DDJ: What do you like to do when you're not programming?

JK: I'm a climber. It's funny, climbing is such a geek sport. If you get to know the climbing community in the Bay Area, you notice that almost everyone is a developer, biologist, engineer, or scientist of some kind.

Patience and Bright Ideas

Pablo Julio Rogina

Employer: AutoZone Inc.

Job: Programmer Analyst

DDJ: What's your job at AutoZone?

PJR: I'm a programmer analyst developing store side applications, mainly with C++ and to some extent with Java.

DDJ: What do you like about your job?

PJR: Being part of a development team, there's always a chance to learn, and at the same time to teach.

DDJ: What do you find challenging about your job?

PJR: Working for a Fortune 500 company is quite an experience. We need to meet our business users' (our internal customers) expectations, and always keep the pace with the technology to have a substantial advantage against the competition.

DDJ: What have you found that makes your job easier?

PJR: Several software tools: Eclipse and CDT, Git (the distributed version-control system), valgrind, the unit testing methodology. A big load of patience and bright ideas from time to time.

DDJ: What's your hobby?

PJR: I'm fond of airplanes, both real (big) ones and the radio-controlled models.

Learning To Say No

Jonathan Nolen

Employer: Atlassian

Job: Director of Developer Relations

DDJ: What's your job at Atlassian?

JN: I'm the Director of Developer Relations, so I work with the large community of software developers.

DDJ: What do you like about your job?

JN: I enjoy my job because I have the chance to work in such a wide number of areas. Atlassian is still a rapidly growing company, and there's more than enough work to go around. So in any given week I get to be a developer, a blogger, a product manager, a support tech, a UI designer, a build-engineer, a tech writer, and team leader.

DDJ: What do you find challenging about your job?

JN: As Steve Jobs said recently, the hardest part about having focus is "saying no to the hundred other good ideas that there are."

DDJ: What have you found that makes your job easier?

JN: I have to communicate with people all over the world. I have colleagues in Sydney, Poland, and Kuala Lumpur. There are Developer Network members all over Eastern and Western Europe, North America, and Australia. But we have an arsenal of amazing tools that actually makes collaboration possible. Atlassian uses the blogs and wikis more extensively than any place I've ever heard of. Skimming through our internal blogs every morning keeps me up to date on progress in all kinds of areas that I might not ordinarily know about. And people chime in with great ideas all the time, no matter if it's in an area directly related their job. Also, we've started using Twitter recently as a instantaneous broadcast medium to people around the company, and it's been a big help as well. I'm a big fan.

DDJ: What do you like to do when you're not programming?

JN: My current obsession is RockBand. We got RockBand in the San Francisco office a couple of weeks ago, but I'm still trying to get over the hump from the "Medium" setting to "Hard." I blog occasionally at I also listen to a lot of music. I built a site called WishRadar with some friends to help me catch deals on used CDs...from Amazon. (I guess that's still programming, but it was for fun.)

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.