DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Dev of the Week: Trisha Gee

Alec Noller user avatar by
Alec Noller
·
Aug. 27, 14 · Interview
Like (0)
Save
Tweet
Share
18.12K Views

Join the DZone community and get the full member experience.

Join For Free

Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Trisha Gee, developer at MongoDB, expert in high performance Java systems, and leader in the London Java Community. Some of her most recent posts on DZone include:

  • Getting Started with MongoDB and Java
  • Readable, Succinct, or Just Plain Short?
  • Career Advice for Programmers

1. What have you been working on lately?

Fairly recently I switched from working on the core Java driver for MongoDB to working on a library that sits on top of that, Morphia. This is interesting for a number of reasons, but the most challenging thing is actually owning and leading a project that I'm fairly new to and therefore by no means an expert. It's fun, because I get to make a lot of the decisions, but it's scary, because it'll all be my fault if something's not right. It's also interesting because it's open source, and I'm currently trying to get better at involving the community and responding to issues, questions and pull requests - I'm not protected by a project manager or business analyst.

I'm also working on refining my code demo Cafelito for JavaOne, and in theory I'm writing a new presentation about how to get the most out of the stuff you learn at conferences - I'm presenting that in November so some lucky people might get to see me practicing that over the next couple of months. And finally, as always I have a backlog of things I want to blog about, but the backlog is ridiculous at the moment, so I've actually scheduled a week off work this month just for writing.

 2. You've been a Java developer for a while, but only with MongoDB for the last year or two. Has it pushed your Java skills compared to previous positions? What sorts of new challenges have you faced? 

The skills I need at MongoDB are quite different from the ones I used in my last position. Previously, I had to understand quite low-level details of how Java was executed at the machine level, and it was important to write simple code that performed complicated high performance things. All of that was at the heart of what the business did. But that's the thing, it really was at the "heart", hidden away from view. At MongoDB, it's quite the opposite - all the code is visible on Github, and thousands of developers are using it every day, relying on it to run their systems (of which we have little or no visibility) and loving or hating our API. Our job is to make other developers lives as easy as possible, making our API a completely different "User Interface" to the ones I've worked on in the past. It's much more difficult to measure ease-of-use of your library API than it is to measure the latency in a system you control. And it makes the other part of my role, the developer advocacy part, really important - not only do I need to go out and let people know about the cool tools we have, but I also need to listen to the developers I speak to in order to feed that back into our design.

 3. Are there any particular developer tools or resources you couldn't live without?

IntelliJ Idea and StackOverflow. Pair programming with a lot of very smart, experienced people taught me a lot about effective IDE use, and I'd be much less productive if I hadn't learnt this. I've been trying to spread the joy of IntelliJ with my most recent conference presentation, where I build up a Java/AngularJS/MongoDB application in 50 minutes. As for StackOverflow, now I can barely remember the days of pasting stack traces into Alta Vista to try and locate the one person in the world who spoke about having the same problem. I find a lot of my answers there (I've been particularly struggling with making all of our Gradle builds more efficient recently), but I probably spend even more time answering questions. Having spent 15 years or so either enormously grateful to the internet for answers or insanely infuriated by not being able to find them, it seems only fair to give back a little.

 4. Do you have a favorite open source project (or projects) that you've contributed to recently?

Ooops, I should have read the questions ahead of time! Obviously, I've been contributing to Morphia over the last few months and the MongoDB Java driver for the last couple of years. I've also been posting more and more of my sample applications and tutorial code on github. I've stopped worrying so much about perfect code or full documentation, I figure if one or two people find the somewhat rushed example code even slightly useful, it's worth having it out there. One of the things I want to get better at over the next year is contributing to other people's projects, particularly those that are dependent upon the MongoDB driver - we're probably making changes to our API in the next big release, so I can help other libraries migrate to the new API.

 5. Do you follow any blogs or Twitter feeds that you would recommend to developers?

Twitter can be really overwhelming, and I don't think you can "follow" it. I think you can surf the tsunami when you fancy it. I tend to add people who I've seen present at conferences who have interesting things to say, and people who have a sense of humour. I have a random collection of some of them here: https://twitter.com/trisha_gee/lists/techellaneous

For blogs, ever since Google announced Google Reader Is Dead I've lost momentum. However, one blog I still follow is Rands In Repose (http://randsinrepose.com/) - there's a lot of good stuff in there about things like your company culture, how to manage geeks, and so forth, but it's also awesome for geek lifestyle stuff - that blog introduced me to TripIt 6 years ago and my life has been much much easier since then because of it!

 6. Did you have a coding first love -- a particular program, gadget, game, or language that set you on the path to life as a developer?

I guess it was the BBC Micro. I was coding BASIC on that when I was 8 or 9. I can't remember what hooked me, I think I loved giving the computer a command and then seeing that executed - first as a "Hello World" and later with basic graphics. I wrote a couple of those terrible "choose your own adventure" text games which I inflicted upon my sister. Writing them was definitely more fun than playing them. I only just got rid of my two BBCs last year - I've moved them from place to place, had them in storage for years, and finally with my move to Spain last year I bit the bullet and accepted I was never going to use them again, and got rid of them. Sad times. Well, not really, as now I live in the sunshine, and that's worth a sacrifice or two.

 7. Is there anything else you'd like to mention?

I think I've said plenty! But look out for updated blog posts soon, and if you're at JavaOne, JAX London, GeekOutUK, or GOTO Berlin this year, I'll be there - come and say hello!


Thanks, Trisha!

Check out Trisha's blog and follow her on Twitter, too!

dev

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Deploying Java Serverless Functions as AWS Lambda
  • Top 12 Technical Skills Every Software Tester Must Have
  • The Future of Cloud Engineering Evolves
  • Too Many Tools? Streamline Your Stack With AIOps

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: