From PMM to PM? What does it mean to be a product manager?

Tatiana Vasilyeva, Product Manager for JetBrains Educational Products, shares her story with Maria Lebedeva, QA Engineer in the MPS project, about finding inspiration and fulfillment in her work.

Tatiana Vasilyeva, Product Manager for JetBrains Educational Products

Tatiana Vasilyeva, Product Manager for JetBrains Educational Products

Table of Contents:

  1. Journey to Product Management
  2. RubyMine
  3. A Good Release
  4. Personal Efficiency
  5. Educational Products and Educational Content
  6. Project-Based Learning

Journey to Product Management

Maria Lebedeva: I want to begin with the fact that you and me, we both followed the same path: we went to the Physics and Mathematics Lyceum No. 239 and then attended the Faculty of Mathematics and Mechanics at St. Petersburg State University. Well, and now we both work at JetBrains. I would like to know how you found yourself at this job.

Tatiana Vasilyeva: At university, I majored in Applied Informatics in International Relations, because, when I enrolled at the university, I wanted to do something cross-disciplinary, rather than just studying programming. Nevertheless, at the end of my second year, I went to work as a junior developer because I was genuinely interested in programming: I wanted to write code in a real industry context and not just as part of academic projects. Then, during my third year, I came across Frederick Brooks’ famous book, The Mythical Man-Month, which greatly influenced me. I understood that I wanted to move towards project management and process management in IT.

By the end of my fifth year, I was no longer coding. I was leading the development team and I was building Agile processes, mainly Scrum, in my team and in a few other teams. I actively participated in Agile conferences, passed certifications, and was one of the founders of the Agile community in St. Petersburg. However, after being introduced to Lean Methodology and completing the training course by Mary and Tom Poppendieck, I began to lean (no pun intended!) towards product management and away from project management. I became fascinated with not only building processes, but understanding exactly what the product should look like, working with the requirements, and conveying to the developers the idea of why we are doing what we are doing, and for whom we are doing it. That’s when I realized I wanted to switch to product management. Since I had been working in outsourcing, where product management is usually done on the client side, not on the contractor side, I began to consider product-based IT companies. At the same time, I wanted to find a company making products that were truly interesting to me.

Then, the Product Marketing Manager vacancy at JetBrains caught my eye. And I got really excited. I knew and loved IntelliJ IDEA while I was still a developer. At that moment, the idea that each product needed its own PMM was just starting to catch on at JetBrains. I never thought that I wanted to work in marketing. But the prospect of working on a good product appealed to me so much that I applied for the job. As a result, I was hired as a product marketing manager and assigned to the RubyMine project. I must say that I had some industry development experience in Ruby on Rails, and this, of course, played a role in this decision.

M: That’s very interesting! So was this in 2011?
T: Yes, eight years ago. It’s hard to believe!

Continue reading

Posted in Interview | Tagged , , , | Leave a comment

Help and Inspire. Interview with Hadi Hariri, Team Lead in Developer Advocacy at JetBrains

Anastasia Kazakova, our Product Marketing Manager for C++ tools, talks with Hadi Hariri, Team Lead in Developer Advocacy at JetBrains, about teaching people, helping, and inspiring them.


Hadi Hariri, team lead in Developer Advocacy at JetBrains

Being a developer advocate, are you closer to the users or to the product teams you are working with?

I think we’re kind of in the middle, which I believe is an important place to be for a developer advocate. We are the bridge between the product teams and users.

Okay, then being in the middle, how do you advocate developers’ needs when thousands of developers worldwide demand a feature or a bugfix, but the product team does not consider this particular need as a top priority?

I think, like anything, when you need something, you should explain the importance and value of it for folks. And this is especially relevant at JetBrains, where we don’t really have a command and control structure.

When it comes to the people who are requesting features that the product team doesn’t necessarily agree with, I try very hard to understand the vision of the product team, i.e. why not. So, I don’t say, look, there are quite a few number of people voting for this or every time I go to a conference people are talking about this, we should do this. I try again to be in the middle, move myself from the user, try to understand why the product team sees this with a lower priority, and see whether they or I may be missing some angle.

Continue reading

Posted in Interview | Tagged , | Leave a comment

An Interview with Olga Berdnikova, UI/UX Designer at JetBrains

“A good day is when there’s some tangible result at the end when you’ve completed a task or a part of it”: An interview with Olga Berdnikova, a UI/UX designer at JetBrains.

One rule for a good interview is: ask the questions you’re interested in. Anna Gasparyan, the Team Lead for the IntelliJ IDEA Technical Writing team, asked Olga Berdnikova about everything she wanted to know about UX design and the specifics of the job.


Olga Berdnikova, UI/UX designer at JetBrains

First of all, let’s sort out the terminology. I’m talking about the roles of a UX architect and a UI designer. As I see it, UX design is mostly to do with analytics and research, while UI design is about visual design. Is there actually any difference between the two, and which of them are you?

For me, there’s no real difference between a designer and a UX architect. In my experience, any attempt to divide these roles will lead to problems. Let’s imagine that a UX architect develops a wireframe with blocks and arrows, and then a UI designer gives color to these blocks, adds shadows and gradients, and the result is cool. In fact, most probably, the result won’t be cool, as this coloring stuff also implies UX. For a good visual representation you need to also understand the users’ habits, and how to draw the users’ attention to a control and help them quickly perform their tasks and navigate the UI.

So these are both stages of the same process?

Yes, I believe they shouldn’t be divided, the skillset is not that different. As I see it, a UI designer must work with the users’ problems and requirements, and, as a result, deliver a mockup that is ready to be implemented by developers.

Continue reading

Posted in Interview | Tagged , , , , | 2 Comments

A First-Hand Insight into Marketing Research at JetBrains

Kotlin Developer Advocate Eugene Petrenko talked with Maria Antropova, Head of the JetBrains Marketing Research department, about her work, her team, their current tasks, and future plans.

Maria Antropova

Your team has been around for quite a while. How did you start out and what kinds of research do you do?

It was back in 2012, when I came to the ReSharper team as an analyst. As more analysts joined me over time, we formed a team as part of the Marketing department. We started with product surveys, market research, and sales analysis—small-scale tasks that addressed our colleagues’ ad hoc requests at the time.

Today, the Research team is involved in not only traditional marketing research, which mostly includes surveys and analysis of open-source information. We also conduct pricing research, design user personas, analyze the popularity of various technologies, do UX research, and build statistical models. Another area of focus for our team is serving as a kind of middleman between our colleagues and the internal statistical systems at JetBrains. Upon request, we export and analyze data from a variety of internal and external sources.

Most of our tasks are associated with surveys. In our annual Developer Ecosystem Survey, we study the developer ecosystem as a whole and explore its parts in projects such as the Python Developers Survey which is conducted together with the Python Software Foundation. By the way, right now we are conducting our third Developer Ecosystem Survey and invite everyone to participate.

Continue reading

Posted in Interview | Tagged , , , , | Leave a comment

Developing the basics: Programming myself, post sixteen

Post 16 Projects

<< Read the previous post from this series  Start from the beginning of this epic journey >>


So the final entry of this project, is, in fact, going to talk about projects. Starting a project for yourself to try and use all your new found programming knowledge is the perfect way to push yourself to learn and practice the skills. Anyone who is going for a job as a programmer will need some kind of portfolio of demonstrable skills to show off to their new potential employer too so there really is no drawback to having a couple of completed projects under your belt.
Continue reading

Posted in Education | Leave a comment

Coding the Art, Continued

Crafting tools and making them better is human nature. JetBrains has built its business on this tradition, by creating tools which developers love using daily and which automate the routine parts of their jobs.

Almost 2 years ago, we shared a story of how we create artwork at JetBrains, along with a cool and geeky tool you could play with to create your own JetBrains-styled art.

Today we want to reveal the progress we’ve made in advancing our generative approach to creating artwork, and give everyone a new version of the tool! We’ve kept at it since 2017 and our techniques have gotten better, our graphics more vivid, and the process even easier.

We’re now up to 22 products. Multiply that by two to three major releases a year for each, and you’ll get an idea of how many different images we are churning out. With this kind of workload, the more automation you have, the better. And just as with tools that help you format your code to a certain style (they are called IDEs, I believe), automated artwork tools can also help you standardize your images with clear unified visual boundaries.

But let’s cut to the chase. Go to to start generating awesome artwork!

In this version, the tool doesn’t give static images, but an animation. You can grab any of its frames as an image or save the whole animation as HTML5!

  • The UI is quite different now but still offers a ton of options and should be easy to grasp.
  • You can choose from a predefined list of product-styled presets.
  • Each artwork consists of 3 layers, any of which can be configured separately or removed altogether.
  • You can stop the animation at any moment; just click anywhere on the screen and hide controls with the Space key.
  • Still frames can be saved as PNGs and animation as HTML5. Make sure to choose the right size.

Don’t miss the ‘I feel lucky’ button which is great for exploring the whole variety of different graphics you can create.

You may wonder why is HTML5 needed. We’re working on a way to allow creating custom screensavers and will announce it later. Stay tuned! But you can already use it for a nice endless animation in the browser.

Under the hood

For the curious (we had a feeling you’d like to know more), here’s how it’s done this time.

The generator is written in Elm language and the animation is powered by the Elm-WebGL library, with some help from the Flat Surface Shader.

The UI is built on top of dat.gui. But, we’ve noticed that the generated animation looks like something from a Sci-Fi movie intro, so we developed an alternative UI (in Elm, as well) for anyone who wants to feel like they’re in a spaceship. Try it out —!

The whole application source code is available on GitHub under the Creative Commons license.

Have fun playing with it and don’t forget to share your results with others and tag JetBrains!

Posted in BehindTheScenes | Tagged , , , | 4 Comments

‘Common sense rather than KPIs.’ Interview with VP of Human Resources Natalia Chisler

In the eight years Natalia Chisler has been with JetBrains, the number of staff has exploded from 120 to over 800 working across 6 distributed offices. JetBrains software is used by millions of developers worldwide, and many of them dream of joining a JetBrains team to help improve the professional tools for themselves and their peers. So what does it take to become a part of JetBrains? Do you even stand a chance if you’re not a Senior Developer? Read our interview with Natalia for answers to these and other questions.

Natalia Chisler, VP of Human Resources

Photo by Alexander Nefedov

Today, all new hires go through the HR department before they join JetBrains. How did it work when you applied, and what is your background?

Well, most people around me are involved in programming in one way or another, including my parents, husband, son, and many of my friends. I went to the Physics and Mathematics Lyceum 239 in St. Petersburg, where I realized that even though I would not specialize in math or computer science, my life would still continue to revolve around people who do.

I liked working with people so I studied Human Resources at university. These two things, HR plus IT, turned out to be a good combination. Back in the early 2000s, the IT recruiting scene in Russia was just coming into its developing stages, so I was lucky to have been a part of really challenging large-scale projects for IT companies.

7 years later, I was invited to join the HR department of a British IT company. That’s where I met Andrey Ivanov, who later introduced me to JetBrains. That’s how this chapter ended… and then my story really began.

Continue reading

Posted in Interview | Tagged , , , , , , | Leave a comment

Developing the basics: Programming myself, post fifteen


<< Read the previous post from this series

The Journey of One Thousand Lines of Code.

So that about wraps it up then. It has been quite an adventure discovering the world of computer programming and learning a new skill which I can take on into the future. I am sure that there are parts I could have done better and more efficiently, and I have a whole new respect for dedicated learners who are trying to change their paths in life by learning new skills outside their comfort zone. It is hard, it takes incredible discipline (which has been one of the biggest problems I have had) to dedicate your free time every day to the pursuit of something that will pay off for years to come.

It’s a trap

There are a lot of things to distract you from the goal of learning any new skill. The thing you have to remember is everything is a choice and a decision. If you decide to go on Facebook the whole night, then this is your choice. How you spend your time is your choice, there are some decisions you can make which can have a much better pay off than others and this is what you need to keep in mind. If you are going to do this, it is up to you. Distractions are going to come up, it is how you deal with them that will be the difference between success and failure.
Continue reading

Posted in Education | Tagged , | Leave a comment

Interview with Sergey Coox, the .NET Department Lead at JetBrains

Anastasia Kazakova, our Product Marketing Manager for C++ tools, talks with Sergey Coox about controlled chaos, internal competition, and keeping 90 colleagues happy at work.

Q: Hi Sergey! You lead the .NET Department at JetBrains. How big is your department and what products does it work on?

According to the latest ‘census,’ we’re 90-strong. We work on ReSharper – our Visual Studio extension for .NET, the second oldest JetBrains tool after IntelliJ IDEA; Rider – an up-and-coming cross-platform .NET IDE; a family of profilers including dotTrace and dotMemory; dotCover for analyzing code coverage; dotPeek – a decompiler for .NET apps; and finally, ReSharper C++ – a Visual Studio extension for coding in C++. That’s about it.
Q: Sounds like a lot! As the Department Lead, what does your job entail?

Making sure that everything works! There are many different people who need to talk with each other and reach a common understanding. That’s what I help them do. Of course, the ideal situation is when the whole system manages itself.
Continue reading

Posted in Interview | Tagged , | Leave a comment

Baking Boards or the Secret Ingredient of Agile Cuisine

Behind every JetBrains product, there are numerous teams: developers, product marketing (PMM), technical writers, designers and many others. Each team has established their own workflows to match their goals, working habits, and the team profile. In an earlier post, we described how the YouTrack team had been cooking Scrum and had managed to transform this methodology to find the most balanced approach that works for them.

Today, we will tell you how other JetBrains teams organize their processes, customize their Agile boards to meet the team’s needs, and what strategies can be useful to become a real chef at the Agile kitchen.

Design Team


The JetBrains Design team creates all kinds of visual content for each of the 23 company products: their designs enhance our web pages, marketing materials, and printed matter.
The designers receive most of their assignments from the product marketing managers (PMMs) who often need them ready as soon as yesterday. Such a fast-paced process requires effective monitoring of new tasks and balanced distribution of them within the team.

Continue reading

Posted in BehindTheScenes | Tagged , , , , , | 2 Comments