Venkat Subramaniam

14

If I can inspire just one other person, I think my purpose in this industry will be fulfilled.

Venkat Subramaniam

Introducing Venkat Subramaniam

Dr. Venkat Subramaniam is the founder of Agile Developer, Inc., an award-winning author, the creator of agilelearner.com, and an instructional professor at the University of Houston. He has trained and mentored thousands of software developers across the U.S., Canada, Europe, and Asia, and is also an invited speaker at international conferences. Venkat is routinely named as a source of inspiration by many of the world's most successful development advocates. Find Venkat on Twitter: @venkat_s.

Geertjan Wielenga: Would you agree that developer advocacy is something that isn't commonly spoken about at universities and colleges and in educational settings?

Developer advocacy and students

Venkat Subramaniam: I would say that even outside of education, developer advocacy isn't well known. I spent years after college as a working professional, and even though it's fair to say that I started working before the time of the internet and browsers, developer advocacy wasn't talked about. Maybe today it's much more prevalent in the industry.

I think we need a lot more integration of what's happening in the industry with the academic world. Students are not generally aware of job roles in the industry once they graduate. They don't know that it's possible to inspire and influence developers.

Geertjan Wielenga: You've been mentioned by several of the other interviewees as being someone who inspires them, but what was your own path to where you are now?

Venkat Subramaniam: It was a thoroughly interesting journey. A few decades ago, I was on a student visa and finishing up my Ph.D. at the University of Houston. The visa meant that I could do practical training, where you could take up a job while you were studying. That gave me one year prior to finishing my Ph.D. and one year after to work.

I actually had a really strong interest in teaching. When I went to the immigration office at the university, they looked surprised and said, "You need permission to work outside, but you don't need permission to work inside the university. You could work in the industry and teach here in the evenings."

I had a passion for teaching because when I was in the Ph.D. program, I taught a course on C++ for a few years, and I wanted to continue doing that. I followed the suggestion from the university. Once I graduated and started working in the industry, I continued to teach at the University of Houston, this time as a lecturer rather than a teaching assistant.

"You can't just decide tomorrow that you want to be a public speaker and then expect results the next day."

—Venkat Subramaniam

Along the way, I got really excited about continuing to speak, learn, and influence. I had an opportunity to speak at a Java User Group and a .NET User Group. After that, I made it a point to speak at them both at least once a year.

I did that for about five years and the reason I mention that is that this is one of the things that aspiring speakers tend to forget: it's a journey. You have to invest in it. You can't just decide tomorrow that you want to be a public speaker and then expect results the next day. It took me years of speaking at user groups.

Geertjan Wielenga: What was your big break?

Venkat Subramaniam: Hard work met with good luck and I happened to be speaking at the Java User Group in Houston. Due to a complete scheduling error, the organizers had put the wrong date on the calendar. They said, "Oh, we made a mistake, but we're still going to give you the chance to speak."

I went to speak on a different day and that's when a gentleman named Jay Zimmerman had come to promote a new conference that he was starting. In the conference, he had people like Dave Thomas, author of The Pragmatic Programmer; Bruce Tate, author of Bitter Java and Bitter EJB; James Duncan Davidson, the person who pretty much wrote Tomcat and Ant; and Jason Hunter, the gentleman behind the servlet API. Those were the speakers.

After my talk, I was getting my things together and Mr. Zimmerman came over and said, "Hey, good talk. Would you like to come and speak at our conference?" Honestly, I really thought he was kidding because the names I mentioned could not be compared to somebody who had never spoken at a conference, never written a book, and who wasn't known outside of my community. However, I got home that night and I saw an email from him saying that he just wanted me to take the same talk that I had given that day and try it out at his conference.

I went to speak at the conference and for my first talk, there were 11 people in the room. That was a very humbling experience. At the end of the conference, I went to Mr. Zimmerman and he had in his hand a rolled-up piece of paper with all the evaluations on it from the conference. He said, "These are the worst evaluations I've ever seen!"

I thought, "Okay, well there goes my opportunity to speak!" I thanked him anyway and went back to my car to look at the evaluations. On a scale of one to five, with five being the best, almost all 11 people scored me a five. That's when I knew that he had pulled my leg!

The next day, Mr. Zimmerman emailed me and asked, "Would you like to come and speak in Chicago?" In my first year, I spoke in three cities; in the second year, I spoke in 10 cities; and now, it's history. I'm the longest-speaking member at the conference, almost 20 years into it. That's the way the journey started.

Geertjan Wielenga: You travel constantly and you're constantly at conferences, drawing in big crowds. You're always talking about cutting-edge developments and how to grapple with those developments in a sensible way. What continues to excite you about speaking?

Venkat's motivation

Venkat Subramaniam: I'm pretty loyal to user groups and on average, I speak at 15 user groups every single year, even today. I feel that this is part of me giving back to the community and my loyalty to the user groups is because that's where I started.

I am here because so many people inspired me when I was young, and after that as well. If I can inspire just one other person, I think my purpose in this industry will be fulfilled. I think that it's important for students to know that as a child, I had learning disabilities. I was a failure in school. A lot of people, when I say this, laugh and think I'm kidding. Students should know that your education and your ability to do well in school is something that you can turn around.

It took me a while to realize that I really hated studying, but I loved learning. This was a remarkable realization on my part because studying is boring. You have to sit there and read stuff you don't care about because the teacher wants you to read it. Once I got to a certain point in my education, there were things that truly started to intrigue me and it was no longer studying: it was learning.

I remember being in college and the people who knew me in school looked at me and said, "No, this can't be true! You were the dumbest guy in the class and now you're one of the top students. How can this possibly happen?" The answer to that is that this stuff is fun.

Mathematics blew my mind and maybe I was just becoming more mature, but I truly got drawn into physics and science too. Once I started getting curious about topics, I realized that I was absolutely drawn into learning. Learning, to me, is like peeling an onion because you peel a layer and you think you've got it, and then you come back after a few days and you realize there are more layers to peel. Just like when we peel onions and we begin to cry, it can be really frustrating working in the field of programming.

One thing that excites me is when things don't work. When something doesn't work, it's awesome because that's when the learning really happens. I'm more than 50 years old, but if you asked me how old I feel, I feel as young as I was on the first day at school because there's no age to being a learner. As a man or a woman, you have an age, but as a learner, you have no age because you continue to learn every single day.

Another thing that excites me about speaking is that, as Richard Feynman said, if you can't teach something to a first-year student, you haven't really understood it. That is so true because you can't teach what you don't understand. When I started teaching, I really began to hit the limitations of what I knew.

"I actually don't think there are complex concepts; I only believe that there are concepts that are not explained well."

—Venkat Subramaniam

When I started learning things, I felt very stupid. Sometimes, complex expressions made me feel stupid. I actually don't think there are complex concepts; I only believe that there are concepts that are not explained well. One of my goals is to take ideas and make them approachable. To me, that is the key. These are the real things that inspire me: the thirst to learn, the thirst to peel those layers of that metaphorical onion, and the thirst to be able to help somebody else to take the journey as well.

Geertjan Wielenga: What keeps you interested in teaching at a university?

Venkat Subramaniam: I'm still a faculty member at the University of Houston and for that I'm very thankful. About 11 years ago, I left Houston and I moved to Colorado. Six months later, I got an email from the university.

I had resigned when I moved away from Houston, so for six months I was not teaching. The email said, "We had a faculty meeting yesterday and we rescinded your resignation. We want you to come back and teach again."

I replied, "I'm not moving back to Houston."

The university said, "We don't care where in the world you are; all we want you to do is to continue to teach at the university." So, for the past 11 years, I've been teaching remotely. Part of the reason I do that is, as we mentioned earlier, there is a sense of how disconnected students are. I want to do something about that.

"I can't change the world, but I can change the small part of the world that I'm exposed to."

—Venkat Subramaniam

I know I can't change the world, but I can change the small part of the world that I'm exposed to. That is part of the reason why I continue to work in the industry and teach at the university also. When I work with my clients, I work on real projects.

I learn about the intricacies of developing software and the challenges that every developer faces. Part of that understanding helps me to go back and teach. I teach at the university, but I also make it a mission to go and teach in corporations.

One experience that I will never forget happened when I was working for an engineering company during the day and teaching in the evening. I was teaching C++ to my students. I was programming in the language during the day for commercial software and then teaching the same stuff at the university.

I would take things from work (without, of course, revealing any work-related proprietary things) and I would teach stuff that my students could actually use. Rather than teaching the theory of the language, I was teaching how to practically use C++ to develop commercial software. What I learned early on is the value of applying the ideas we learn from the industry into the classroom because you're teaching something that is relevant.

One day, we had a crisis call from one of our teams in California. The engineers were making a copy of the model we had created to make some enhancements, but something had gone terribly wrong. We had data corruption and it was a disaster.

This was mission critical. We spent time debugging at work until it got to 4:30 p.m. I had a class starting at 5:30 p.m. I apologized to my team, saying, "Sorry, you've got to continue on this. I've got to go and teach a class at the university, but when I finish my class, I'll continue working on it." Right in the middle of my class, I remember pausing and thinking, "Oh, my goodness! I know the reason we're having the problem at work!"

Geertjan Wielenga: What do you think solved that for you?

Solving a problem

Venkat Subramaniam: I solved it by detaching from the problem. As soon as I finished my class, I ran over to the phone, called my supervisor, and said, "I figured this out while teaching. Here's the reason why it's failing." He looked at the code and he agreed with me. The next thing was to call the developers. We had literally thousands of classes in our system. An immediate call went to all the developers to take 100 classes each. We plowed through the night fixing it.

That experience made me realize that this works so much in tandem: I do pair programming with my colleagues in the industry continuously, at every opportunity I get, because the only way I can be effective in teaching is by learning from the industry. I continue to teach because the only way to be really effective in my work is to take the time to continuously learn.

What's the point in learning something if you can't apply it? Much of the time, in a work environment, we're firing through all these problems and struggling to solve immediate concerns. Teaching gives you an opportunity to step back a little bit and say, "While this works, let's also look at these other things that are useful." You never know when those other things will actually turn into something you can apply to that very project.

Whenever I hear somebody say that universities are detached from reality, I always end the discussion by saying, "Thanks for identifying the problem. What are you going to do about it?" I encourage them to go and teach at a university.

I remember when I worked in the industry from 7:00 a.m. to 4:30 p.m. and then I would go to the university. At 7:00 p.m., I would finish my class, but then students would come to me with their questions. I'm not even kidding, there were times when I was at the university at 10:00 p.m., still talking to the students because they wanted to talk. They wanted to talk about tech, life in general, being in the industry, and problems they had to get through.

I was getting peanuts as my salary and if I totaled the amount of time that I was spending at the university, I was literally making less than the minimum wage. Yet my work was so rewarding because to me, the value of teaching is not in the money I take home: the value is in the impact I have on society. One of the things that we tend to forget is that if one person is able to get a really good education and a job because of that, it's not just a personal gain for that person. You're making an economic difference for not just a family, but potentially a generation of people.

"Education truly is that one thing that can make a big difference in the world."

—Venkat Subramaniam

I got a fairly good education through very hard work, but because of the investment I put in, my family is doing really well today. I have children who are able to afford a good education. I can definitely say that I'm capable of pulling my own family out of poverty.

If we can help at least a few other people to do that for themselves, then I think that's a really good way to end economic disparity because education truly is that one thing that can make a big difference in the world.

I'm not saying this to boast, but when I go to speak at conferences and user groups, I can't tell you how many times people come up to me and say, "Your talk really changed the way I look at programming."

I'm here today because other people inspired me and it's only logical for me to turn around and give back. You can't be a person in this industry and just program, and then call it done. You also can't teach, whether it's in the industry or at a university, and call it done. I think it's a combination of the two that is absolutely critical.

Geertjan Wielenga: This meaningful aspect of what we do as developer advocates can be very difficult to see for people outside of the area in which we work. We're passing on knowledge, rather than just programming. We're inspiring people, we're influencing people, and we're contributing. Would you say that this aspect is hidden from the outside world?

Venkat Subramaniam: Yes, and this is something that we should continue to really bring out because the next generation of developers can be so much better if they can learn from our mistakes. I would argue that it is the professional responsibility of every one of us to contribute to the industry's growth in the future.

Geertjan Wielenga: With developer advocacy, there isn't a narrow focus: we can branch out and do a whole range of other activities aside from programming, supported by social media and other developments from the past few years. Could you have imagined 30 years ago that this variety of loose, flexible outflows from a central role would exist?

The importance of user groups

Venkat Subramaniam: No, but I remember being part of user groups, even back then. User groups were really the way to bring a community of developers together. The word "symposium" originated from geeks getting together and socializing. There is evidence of Einstein and Planck holding symposiums. People have been doing this for centuries.

I remember as a young programmer going to user groups. When I see my students, I say, "I know you're focused on your studies right now. Your assignment that's due next week seems so much more important, but in the long run, your career is going to be better because of the time you spend at user groups."

Of course, we now have Twitter and Facebook, and other social media channels, but I think that face-to-face interaction is still incredibly valuable. I can't tell you how refreshing it is to go to a user group meeting to hang out with fellow developers.

I say this with utmost humbleness, but today, because I travel so much around the world, it is really hard for me to maintain good friendships with people. I'm not home over the weekends and I'm not home at all for long periods of time. If somebody calls me to get together, I have to tell them that I'm not home. You kind of lose friends over time because of that.

The people who I call friends today are the people who I have met at user groups over the years. In my own local community, those are the people I reach out to.

I remember going back to Houston to give a talk earlier this year. Right in the front seat was a gentleman. He interrupted me in my talk to ask me a question. I paused and I said, "You're as annoying today as you were 25 years ago, and I love you for that!"

"This is one of the most important things: be part of the community."

—Venkat Subramaniam

These are the moments I will never forget because 25 years ago, that man was the same as he is today: argumentative, interested, curious, and keen on going further into a topic. It was so refreshing to see him in the front seat. This is one of the most important things: be part of the community.

Contributing to open source is good, but the word "contributing" is a very flexible word. You don't have to be the person writing code all the time. Honestly, I don't write code for open source, but I'm hoping that I still have a contribution to make. I critique the tools I'm using, I speak about open-source products, I inspire other people, I point out bugs in the code, and so on. You can be part of a community in any way you want to be, but the key is to be part of that community. Your activities will be determined based on your passions. Who am I to tell you, or anyone, how you should do things? That's for you to figure out.

Networking is extremely important for developer advocates. Many times, I have walked into a company and somebody has come to me and said, "I saw you at that user group three years ago. When they mentioned your name and they wanted to bring you over, I was all in support of that." When you are applying for a job or trying to seek help in the industry, one of the things people forget is that it's not who you know that matters: it's who knows you.

Being part of the community, going to the user groups, and participating is a way to really get your name out in the community. I'm not suggesting this as a way of manipulating, but I'm saying that this is a way of being effective. We are here to further ourselves in our career, while helping other people. By networking, I think we have a lot to gain.

I can tell you that of all the developers that are out there, only a small percentage actually go to user groups regularly. Whether you're a student or colleague in the industry, going to user groups is something we all need to do.

Geertjan Wielenga: I'm also involved in a similar role to you at a university and when students come back from internships, the main problem tends to be that they have run into a problem, but they didn't have enough maturity, courage, or insight to ask somebody to help them. Often, they haven't developed the soft skills that are also needed in the programming field. Do you think that user groups could be leveraged to help students in this way?

Venkat Subramaniam: Yes, I do. As an example, I had a student at the university who was supposed to work on something alongside me.

I had set up a version control so we could work together remotely.

I gave her the URL for the version control, told her to access it, and asked her to check her initial work into it. I would then review it and give feedback. A week went by and I was getting a little nervous and frustrated because I hadn't heard from the student. I offered her help but didn't hear anything. Things didn't move. Finally, I suggested that we walk through the task on Skype. I asked to see what she had done so far. There was a pause and then she said, "I don't know how to use the version control."

I replied, "In five minutes, I can show you how to use it. We didn't need two weeks to figure this out." Within a matter of a day, she was able to produce so much work.

I sat back and I thought, "What have we done as an industry? The environment we have created has placed people in a position where they are embarrassed and humiliated to ask for help." If I'm sitting in a corner and I don't know how to do things, but I'm not going to come and ask you for help, it's not entirely that I don't want to ask for help: it's probably because somebody before you called me stupid for asking for help.

When I'm teaching my classes, they are probably the worst classes a student can take at the university. They have very little theory, so my students learn by doing. I do code reviews from 4:00 a.m. to 7:00 a.m. local time every single day when the semester is on. Not many students want to take my course because it is the most difficult course they could ever imagine.

I always suggest the next set of things the students need to do to move forward. Initially, my comments to them are to delete everything and start over.

The students are often in denial, asking, "Are you kidding me? I've written code for three years and you're telling me I have to delete everything and start over?"

"As people who are experienced, we should look out because we're the loudmouths. There are so many people who don't have a voice."

—Venkat Subramaniam

When students can learn by doing, they have the courage to take feedback. Students have to break that ice and they have to seek help more proactively. As people who are experienced, we should look out because we're the loudmouths. There are so many people who don't have a voice. How can we remove all these social barriers we have worked so hard to create over the past few decades, and how can we really help another person to open up and ask for help? Today's ignorance is tomorrow's excellence.

The fear of not knowing enough

Geertjan Wielenga: Let's shift this slightly to public speaking, where the situation is similar: people tend to think they need to know everything about a particular topic before they can go and speak about it. What is your advice on that?

Venkat Subramaniam: I think that there is another flaw: people think that they need to tell everything as well as know everything. That is the quality of a really poor talk, in my opinion.

One night I saw an email come through saying, "Dammit! I'm still here in the middle of the night, working on the example you gave because this is so intriguing. I've gone on to dig so much deeper and I've gone so much further into this topic. I'm just writing to let you know that you inspired me to learn." Sometimes, you just need to light that fire in someone's mind. You don't need to know everything and you don't need to convey everything.

When I go to conferences and speak, someone in the audience often is the person who wrote this particular language, library, API, or tool that is the topic of my talk. I could ask myself a question: "What qualification do I have to talk about this when the very person who wrote it is right here in the room?"

The answer to that question is: that person can never take away from me my story, my learning, and my experience. I'm never trying to pretend that I know everything. But I'm also genuinely going to say what my learning was. I may not be correct about my understanding of a language, a library, or a tool, but I can never be wrong about my learning because that's my journey and my experience.

For beginners, again user groups are a great place. You're not required to deliver with the intimidation of a conference. User groups are like a family. Even today, I tease out some ideas in user groups before I give a talk to a conference. When my talk is over, there are people who are genuinely interested in staying around for even an hour to argue about and discuss concepts. There's immense learning that I can get from this. Whether it turns into a book, a blog post, or a talk, it's been valuable to get that feedback. Any opportunity to speak in smaller groups is an opportunity for you to get better.

Geertjan Wielenga: Do you have any tips for new speakers who lack the confidence to make that jump to conferences?

Venkat Subramaniam: Conference organizers are often in a predicament because people pay money and invest time to come to conferences, so it's very critical for them to have talks that actually deliver results. At the same time, many conferences ask a few new speakers to come and give short talks. They can give lightning talks and they can grow from there. A number of conferences are also organizing workshops for new speakers to become better speakers.

There's one more thing I would recommend: you can do a joint talk. It doesn't have to be too formal. When I do keynotes at conferences, I sometimes ask a random person to come and join me. This person comes up on stage and as I'm talking, I direct questions to them and ask for their opinion. It's stage fear for them as much as it's stage fear for me. Afterward, they say, "That was awesome to be up on the stage with you, but I was a nervous wreck."

"There is nothing special about us that means we can be on the stage; anyone can be up there."

—Venkat Subramaniam

I reply, "You know what? I'm a nervous wreck too; it's just that I've done it so many times." There's nothing special about us that means we can be on the stage; anyone can be up there. I still have that fear; I stand up and my throat dries up.

I was giving a keynote at Jfokus a few years ago and this lady came up to put the microphone on me. As she was putting the microphone on my shirt, she noticed my heavy breathing, and she said, "Looks like you're nervous! Is this your first talk?" I replied, "No, this is my 10,000th talk! I'm nervous every single time." We never remove the nervousness, but we learn to manage it.

My friends know what a terrible critic I am. I will either email or direct message them to say, "I saw you do this and I don't like it. I don't agree with it." Part of the reason I do this is because they're my friends and I want my friends to be doing well, but I also expect them to do the same thing for me. When authors of a language email me, which does happen because I've earned some of their friendship and acquaintance over the years, I'm so happy that they're able to correct me and I'm able to improve.

The rule that I follow is very simple: you should praise people publicly and critique them privately. When I attend any talk, I quietly take notes. I only give feedback when speakers ask for it. One of the things I've learned in my life is to never give unsolicited advice to another speaker. Not everybody comes to you and asks for help. You can mentor a particular speaker if the speaker has the potential to turn into a reputable speaker. I think we can collectively, as an industry, do so many things that we're not doing right now.

Geertjan Wielenga: How do you pick the topics for your talks?

Venkat Subramaniam: That's a really hard question to answer because I diversify in so many areas. I program in about 15 different languages, but what I normally do is let my brain wander until I find something that piques my interest.

Venkat's conference topics

I play with ideas, sometimes for six months or even a year. I may decide to give a talk about something relatively new, but usually I've worked on something similar to it before and I can see the application in that area.

I tend to pick topics based on whether I have a story to tell. This is really the underlying theme. As an example, I was playing with Kotlin for quite a while. I knew that other people were also giving talks on Kotlin, so I thought, "You know what? I don't think I have any interest in giving a talk on Kotlin."

Then, I started struggling to understand a particular concept with Kotlin. I was able to write code to use it and I had read the documentation, but there was this dissatisfaction in my mind. I didn't really connect with it. Suddenly, I realized that the concept was similar to this other language. I switched over and played with it in that other language. Then, I came back and wrote the code in Kotlin in a way that actually worked. I was ready to give a talk on Kotlin after that because I had a story to tell. I always say that the books I write and the talks I give often come from what is curious to me.

"Having a story to tell comes from critical thinking."

—Venkat Subramaniam

One other thing that I tell students is that having a story to tell comes from critical thinking. Developers and students can have this mode of absorbing APIs and syntax for years, but it's important that they have critical thinking skills. I have had people come up to me and say, "I know all the stuff you were talking about, so I was wondering if I should even come to your talk. I sat there and found that you had some different perspectives in there. I had never thought of it that way, and now it has given me a renewed interest in thinking about it." To me, that is the key: be curious about a topic, but also, spend some time on it using critical thinking.

I've been doing this for a good 20 years now and I often wonder if I'm going to run out of topics. I actually wipe out most of my talks at the end of the year. December is the beautiful month when I retire my talks that I've given in the year. In January and February, I create new talks. It turns out that I don't run out of topics because through the year, as I'm working on things, I develop new understandings, which is that onion layer I talked about.

Geertjan Wielenga: In your case, as a developer advocate, you don't work for a specific company. You pick topics purely based on your own interests. Could you see yourself working for a particular vendor of some kind in the future?

Venkat Subramaniam: I wouldn't be able to do what I'm doing now without the support of my wife. She has taken this risk with me because one day I came home and said, "I'm quitting. I'm not going to work for a company anymore."

This was a conscious decision that I made nearly 20 years ago. I quit my job when my son turned one. I had a lucrative job that I was doing extremely well at. It was a job that anybody would die to keep. The decision came from nearly four years of unhappiness. I was working for this large engineering corporation and sometimes I would look at myself and my happiness index. I was making money working on cool tech and working with very smart developers, and yet, I was pretty unhappy. I would go to the university and teach in the evening with almost negligible income, but as I said earlier, sharing knowledge was absolutely more rewarding.

Due to the amount of travel involved with developer advocacy, over the years my wife occasionally asked me why I didn't want to have a normal job like everybody else, but she knows that I'm not wired that way now.

I thought, "What if I can do what I truly enjoy doing, rather than going to work and doing what I'm told to do?" In a way, I would say there's a rebel in each one of us. My rebel was a little louder, I think. The reality is that there are times in life when we have to do what other people tell us to. Even today, there are times when clients want me to do things that I may not get excited about. Thankfully, I reduce those situations. I reject a lot of work that comes my way these days, and I only settle on things that I am interested in doing.

To answer your question, part of the reason that I do what I do is that I want to be able to devote my time to creating value. For me, value is not in making a rich company even richer. Large companies are necessary because if you look at the work that some of them are doing, no individual could ever achieve that. I want to emphasize that I'm not naive about this topic.

The beauty of this world is that each one of us has to decide what excites us. I have friends working in large companies. I admire them and I learn a great deal from them, but I can't do what they do. Not everybody could do what I do either.

In the past, people have come up to me and said, "You don't have a position. You don't have a title. You could have been XYZ in your life." In fact, I've had interviews over the years for roles that would have meant working very high up in companies.

To give an example, I was interviewed to be a top person working directly under the president of a company. I was told, "You're the right person for this, but there are some things you have to understand. We're going to give you the weekend to decide. When you walk into this company, we're going to rely on you heavily; we will need you to be on call."

I asked, "What about my teaching?" This was before I got into speaking at conferences.

The interviewer replied, "You have to cancel that commitment because we need you here. We can't have you focusing on anything else."

That was the hardest weekend for me because I was sitting at home biting my nails, thinking, "Do I want to throw away one of the things that I enjoy the most for career development?"

On the Monday, I wrote to this president saying, "I want to thank you for one important thing: you made me realize what truly matters to me, so much so that I'm not going to come and work for you. Actually, I've decided not to work for anyone."

"Within two years, I had quit my job. That was a pivotal moment in my career."

—Venkat Subramaniam

I started saving money like crazy at that point and within two years, I had quit my job. That was a pivotal moment in my career. Today, I get paid by corporations when they call me to come and teach their employees. I get paid when companies call me and ask me to help them with their projects and test-driven development. If companies don't call me, I won't have any income, but at the same time, I have a job at the university that pays me a minimum wage salary based on me being a part-time employee.

There are other ways to make money, but this is the balance that I really wanted to strike. I want to make enough money so that I won't retire in poverty, but at the same time, I want to spend time on the value proposition that I mentioned earlier.

I have to say that I'm very thankful for this opportunity to travel and teach. I'm thankful for everyone in this world who has supported me on this journey in so many different ways. I deeply respect other people for what they do, but I'm also happy that I'm able to be independent. I can critique, express my ideas, and explore things that I feel curious about.

Geertjan Wielenga: How would you describe yourself to a non-technical person?

Venkat Subramaniam: I would say that I'm a student of computer science and I learn every single day how to apply tech. I help other developers to learn those things too. Part of what I do is turn what is enormously complex into something that's very approachable, and in the process, I make that tech relevant and useful for developers to apply to the businesses they are part of.

Geertjan Wielenga: Thank you, Venkat Subramaniam.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset