Twitter LinkedIn Github

JetBrains

I’ve recently been looking for a new member to join my team. During the interviews I explain to each candidate the way in which my team works, and I thought it might be interesting for others to know a little bit more too. And of course it serves for future references.

We’re all (nearly all) Remote

Apart from one of us, the rest of the Evangelism team works remotely. Working from home or the office is not an issue. In fact, even for those at JetBrains that work from an office, there really isn’t any 9 to 5 schedule. People come and go as they please. Some arrive at 8 am, others at 11 am and some at 5 pm. We don’t clock in and outs.

There’s no Micro-Management

One thing I make very clear from the start to anyone joining my team, is that I don’t micro-manage. I don’t believe in micro-management and I’d hate to be micro-managed myself.

I trust people on my team. We share the same vision. I give them the freedom to work and I believe that they will act in the best interests of our common goals.

There’s no Management

Technically I manage or lead the team, but I find that my role is to try and solve issues when they come up, and to make sure that everyone is happy on my team as well as those teams for which we work with. And of course ultimately all of you, our users.

I’m also that extra set of eyes when someone wants a second opinion.

You could say I’m more like a Scrum Master, except I don’t like much the word Master, specially when it’s something you can be certified in in two days. But I think the duties are somewhat the same.

There’s no Reporting

I don’t believe in detailed reporting of what you do each day. We have a mailing list where each of us sends a short weekly summary of things we did. Everyone on the team sees it, not only me. The report is more about having awareness of what’s going on, specially since quite a few of us are involved with multiple products and sometimes these overlap.

We use YouTrack

We use YouTrack to track our work. We use it to communicate with each other and the teams. We use it to plan things out and schedule activities and it serves to control the different stages some activities need to go through.

There’s one meeting a week

While quite a few times we have one-on-ones, mostly via Skype, we only have one weekly Google hangout which we call the weekly What’s Up, and the general rule is that you have to say “What’s up” when you join. Idea is that it reflects the mood, breaks the ice and in fact mostly changes the mood. And that’s very useful when you’re working remote and many times alone.

Of course, not always do we say it. But we should.

Initiative is demanded

I expect people on my team to show initiatives, to come up with ideas. Our work isn’t limited to just doing tasks that are assigned to us. It’s finding areas where we can improve things and working on these things.

Sometimes initiatives don’t always work out or go according to plan, but I’d much rather work with someone that tries, screws up, and says sorry than someone that never does things without asking for permission first.

We code

I made a pact to myself when I joined JetBrains that I’d not become a pundit. How could I possibly show people how to make better use of our tools or solve issues if I myself weren’t facing those issues or working with those tools? In addition, I love software development. I enjoy it and I always want to continue to write code. And I make sure I do.

I also demand it of the team. Whether this is working on internal things, extensions, plugins or Open Source Projects, it’s a team policy that everyone should write code. And I’m happy to say that it’s not enforced because we all love writing code.

Our goal as a team

Our main goal on the Evangelism team, despite the bad rap that the term Evangelism gets, isn’t to sell. It’s to help our users. It’s to educate. It’s to get feedback. It’s to be aware of what’s going on in software development field. To be part of the community.

And our job isn’t limited to producing content around our tools but also on topics we’re passionate about. And this is encouraged as part of the job.

In addition, it’s also a team and JetBrains policy, to keep conference sponsorships and speaking at conferences completely separate and independent from each other. We all speak at conferences either by invitation or using the normal call for papers channel that others use. We don’t believe in sponsored slots and we definitely don’t buy slots. If as part of a package we’re offered a slot, then we always try and do some presentation that provides value to attendees. Sometimes this is a tips and tricks session, otherwise it’s something completely unrelated to our tools. Again, we only speak on things we’re passionate about and believe in.

It’s about Trust. It’s about Caring.

One of the most important aspects I think of building a good team is of finding the right people and trusting these people, caring for them. If you do that, you’ll get the same back.