Problem Solver
Daniel Petersson
Employer: Cefalo AB, Sweden
Job: Problem Solver
DDJ: What's your job at Cefalo?
DP: Software consultant, trainer, mentor...
DDJ: What do you like about your job?
DP: Problem solving. I'm a compulsive problem solver; whenever I pick up a DDJ I go straight for the PC-lint advertisement just to solve the problem. I should probably print "problem solver" my business card. I have worked on numerous projects and I always end up as the "the person to ask when nothing else does the trick."
DDJ: What do you find challenging about your job?
DP: The mix of technical and human problems. To communicate knowledge and technical solutions is extremely challenging, since bad communication may render a great solution useless and great communication may inspire developers into a state of flowand we all love that.
DDJ: What have you found that makes your job easier?
DP: Books and tools. The list of tools could probably go on forever, but here are a few of my current favorites: ildasm whenever I need to understand how something in the .NET framework is implemented. Sure, the Reflector tool is useful but I actually prefer ildasm. The Visual Studio 2005 debugger and sos.dll for tricky debugging issues. MSBuildfinally a build solution from Microsoft that can be extended. My SmartPhone and Outlook. They keep all my tasks and vital information in a single place.
Unit Testing Is A Groovy Thing
David Black
Employer: Cape Clear Software
Job: Senior Engineer
DDJ: David, what's your job at Cape Clear Software?
DB: I'm Senior Engineer on the Tools Team, helping to develop our Eclipse-based SOA tools.
DDJ: What do you like about your job?
DB: It's an exciting time in the SOA and Enterprise Service Bus space and I really like being at the leading edge of software innovation.
DDJ: What do you find challenging about your job?
DB: It's constantly a challenge to find a balance between ease-of-use, good UI design, and exposing the power of our tools. Coupled with that is the fact that different people use tools in different ways, and anticipating all those use cases is quite a challenge.
DDJ: What have you found that makes your job easier?
DB: A few things come to mind: Eclipse, Mylar, and Groovy...I turn to Groovy for scripting. Unlike other dynamic languages, a key strength is that it's built on the JVM, compiles to bytecode, and interoperates natively with Javaa powerful combination! Groovy is great for unit testing as Java unit test code can be quite verbose. Language features like closures and native syntax for lists and maps mean less typing and code that's easier to read.
Wearing Different Hats
Joe McGlynn
Employer: CodeGear
Job: JBuilder Product Manager
DDJ: Where do you work?
JM: I work at CodeGear, formerly Borland's Developer Tools Group; our core product lines include Developer Studio, JBuilder, Turbo, and Interbase. We have the best team here that I've ever worked withsmart, hardworking people committed to building great developer tools. Management has really empowered the team to pursue their vision, which is incredibly exciting and powerful.
DDJ: What's your job there?
JM: The JBuilder team moved to an Agile development process for this release, a variation of Scrum...My role is to write the user stories that represent the features and work with the team in decomposing them into actionable tasks.
DDJ: What do you like about your job?
JM: We're a fairly small team, so we all get to wear a lot of different hats. I like that, I like being able to think big, whiteboard product direction, and then completely change gears and spend an afternoon evaluating a functional area of JBuilder.
We're also doing some really cool collaborations with some of the Open Source guys. For example, we just finished off a development cycle with Benoit Xhenseval from ObjectLab. His team is responsible for the QALab tool, which allows aggregation of project metrics over time. With his help, we've been able to adapt it for use with Maven 2, and to deeply integrate it into our new web project portal.
DDJ: What do you find most challenging about your job?
JM: Like everyone, we never have as much time as we would like for a release.
DDJ: What have you found that makes your job easier?
JM: Adopting and adapting Scrum was a great start for us. Previously we had a process that was closer to a waterfall approach. Selecting good team tools, and integrating them together has allowed us to always know exactly where we are in terms of progress against features, quality and schedule. Knowing our velocity has greatly improved our ability to deliver the right software on time.