Interview with John Papa at Voxxed Days Athens

Interview with John Papa at Voxxed Days Athens feature image
Image by Voxxed Days Athens

Earlier this year I attended the Voxxed Days Athens conference and had the pleasure to meet John Papa.

After his inspiring keynote talk about readable code, I got to pick John’s brain and get some wonderful career advice, which I’m excited to be sharing with you.

From online courses to podcasts and coding style guides, John’s contributions to the dev community always stand out and provide great value, and this interview is no exception.

On building a team

Since my friend and co-organizer of the Angular Dublin meetup, Simona Cotin, joined John’s team last year, I’ve been hearing nothing but the best feedback.

Knowing how hard it is to pick a good team, or even harder to actually build one, I asked John to tell us a few things about his approach.

John Papa: My philosophy on building a team is a little different than some people’s maybe. This may not work for everybody.

When I build a team I first look for technology skills, what am I trying to build it for. That is one piece of it, but it’s not everything.

I also look for people that are less experienced and people who are more experienced. I like to have a variety of that, because I feel that we get different things when you’ve been coding for twenty years versus coding for five years. There’s different ways you look at things sometimes and it’s nice to have that diversity.

Also different technologies, I like to have not just one technology.

I look for people who don’t necessarily agree with me, who have a different point of view on things. While it’s great for somebody to say “I love this, I love that, I agree with you”, you’re not getting another perspective. So hearing a different perspective, but also being able to give that perspective in a nice, communicative way. We don’t want to fight, we want people who can talk about things and learn.

Interview with John Papa at Voxxed Days Athens - 1 of 3 Image by Voxxed Days Athens

Also I’ll say diversity but I don’t mean necessarily just “male, female, young, less experienced, everything else”; I mean more diversity of thought, diversity of culture, diversity of experience.

For example, Simona has got a background working for large companies and she did some consulting. Another gentleman on our team worked at a large company for a small career. Another person was a teacher on my team - used to teach students. And another person on our team was a manager of developer relations. So we just got this variety of people who like to do different things.

And in developer relations I always tell my team “don’t look at other people doing the job to figure what you should do”. It’s very easy to say “Oh, I like what John Papa is doing, what Simona Cotin is doing, I’ll do that”.

Find what you’re best at, find what you enjoy the most - what your passion is, find what you can get paid for, and when you have those three things and you can find somewhere that has all three, that’s the best place to be.

So when you’re looking for a job, or when you’re looking to hire people, I ask people not what they know but I ask what they enjoy the most.

Like, Simona really likes to speak on stage. We have another gentleman, Burke, who loves to write and he came to me early in the job asking “I’m doing videos, I’m writing code, I’m writing articles, I’m doing talks, I’m building a product. I feel like I’m doing too many things, which one should I work on?”. I said “What do you enjoy?”, he said “I love to write”. I go “Honestly you’re a fantastic writer, why don’t you not do the other things?”. And once he started doing that he was much happier. And frankly the rest of the team got better because if you have somebody who can do each one of those things they’re a better team.

So I look for diversity, it’s a big big thing.

On instructive training and talks

Much of the value John provides to the dev community comes from training. From online courses to talks and live workshops, John can explain things well in an engaging and compelling style.

For that reason, I asked for his advice to somebody who wants to do that for a living; things like, how to start, what is the best way to practice, or which resources to look for?

John Papa: I think there’s two kinds of talks, and I say kinds because you look at the purpose, what is the outcome you want from teaching. Do I want the outcome to be to teach, where I tell you something and you learn it and then you can go do it? Or is the outcome that I want for you to be inspired, that “I like this”?

I could talk about Swift in five minutes and maybe I can show you some ideas that speak to you and make you want to go learn it more.

So one’s more inspirational / motivational and the other one’s more like real teaching, like sit down for eight hours and open a book up. They’re both good but I think we mix them too much sometimes.

It’s very hard in half an hour to teach anything really. It’s very easy in five minutes to inspire.

Inspire as in getting new ideas and things like that.

What I recommend is starting by picking topics that you are confident in. Don’t pick a topic you don’t know, pick a topic that you know. And I know it’s common sense but I see people all the time picking something that they don’t know well, and then they get on stage and they don’t feel confident and they don’t know what they’re saying and they are worried.

When you’re speaking a lot of it is eye contact, body language, your voice and the topic. So working on how do you take something you know and convey that to somebody else.

I practice it at work, I practice it at meetups, there’s a program called Toastmasters for people to go and learn how to speak, I read some books on the topic too.

There’s a great book I love, it’s called Made to stick. It’s a very short book and it’s all about how some ideas get in your head, like commercials, and they don’t leave you.

Have you ever watched a commercial and you think about it for days later? It’s about why does that happen. And the book talks about very simple things, like did they pull on an emotion for you? Was that something you felt inside? Is it a simple idea?

Interview with John Papa at Voxxed Days Athens - 2 of 3 Image by Voxxed Days Athens

If it takes you more than fifteen seconds to explain it, you don’t have more than fifteen seconds in a commercial, right? So if you can’t explain it to me in fifteen seconds…

Like, has anybody ever said to you, “Tasos, how does Angular do change detection?”. If it takes you twenty minutes to explain it, you’ve lost them. And it doesn’t mean that you can’t take longer… So this book explains these things and it really broke down for me a lot of things that I used to think; I realized I was wrong.

I don’t need an hour to tell you how to do something. You know in a talk, the most attentive somebody is, is in the first minute. Think about movies you’ve watched. You notice that movies today, the beginning scene is always very exciting. Like a James Bond movie, dropping out of a planes, and fighting, and it’s because they want to get you sucked in. If you look at movies thirty years ago, the opening five minutes was credits. Can you imagine today watching a movie (with that many credits)? Like, “really?”.

So I look at talks like that. When you’re practicing talks, always start with something that’s really compelling. Don’t get up there and go “My name is John and I live in a small house and I have four children and I like to wear black shirts and I like to shave…”. Nobody cares! Makes sense?

On choosing technologies

One big problem we face as software engineers is how to choose our technologies, and we often suffer from what’s called developaralysis: we don’t know what to work with, we feel that we can’t catch up, and that we can never know enough to stay relevant.

John traditionally works with lots of different technologies, therefore I asked him for tips and advice on how a professional can make informed decisions and invest time to the right technologies.

John Papa: That’s a hard one, for everybody, and I think it depends upon your personality and your work habits. I’ll tell you what I do.

First thing is you have to be comfortable that you’re never going to learn them all. You just can’t. There’s way too much and I think a lot of people, the reason they feel that way, like the paralysis, is because they see a hundred new things, they feel like they have to know them all. And therefore they learn none of them because it feels so bad. So learn that it’s okay not to know every framework, every tool, every library.

But then what I do is I try to pick one or two that speak to me, something I enjoy, and then I watch social media, Twitter, LinkedIn, all open-source slack channels. And when I hear people talking about something a lot that I’m not seeing, I wait to see - it’s like a trend. And If I see a lot of people talking about it and they’re excited, not just you’re talking about “I hate it”, I start taking a look.

Interview with John Papa at Voxxed Days Athens - 3 of 3 Image by Voxxed Days Athens

I did this with NGRX recently, about seven-eight months ago. Didn’t really get into it, it didn’t solve a problem I had. I had already solved this problem with other things, but I know a lot of people liked it and after a while I was like “Okay I think I need to make time and look at this”. So I set aside time and it was a month later. I had some time to look, and I realized what people liked, what they didn’t, I made my own opinion.

I probably learn two or three new things each year like this. For me it’s easier if I try it; reading about it, watching a video, I usually start there, but if in ten-twenty minutes I can’t go write code, I usually leave it.

So it’s hard (the answer)

I think it’s to figure out what would make you interested in learning something new, try that, and just be ok with the other 99 things not being there. Because you know what? Half of those won’t be here next year.


John’s advice made perfect sense to me, and I’m really thankful for our discussion, which you can also watch on YouTube.

It also paid off really quickly. As a matter of fact, not long after the interview, I published my first online video course about microservices, and I’m already planning some conference talks for next year.

At the same conference I also got to talk to Venkat Subramaniam, Ted Neward, Christina Aldan and more, but that’s a story for another time.

I highly encourage everyone to attend conferences like Voxxed Days and get inspired by such prominent personalities of the dev community.

So which was your favorite part of the interview? What do you think about John’s advice? Don’t hesitate to leave your comments below!