Connecting the dots: where hard work and dreams can lead you
This is the story behind AngularInDepth and inDepth.dev. It recounts obstacles I’ve gone through, emotions I had to face, people who helped me and lessons I’ve learned along the way.
Luck is what happens when preparation meets opportunity. — Seneca
Hey, my name’s Max. And I’m lucky.
Just a few months ago I got back from AngularConnect where I delivered my last talk this year. This is the biggest Angular conference in Europe with more than 1000 participants. This year I also presented at NgConf, the biggest Angular conference in the world, and at a few smaller conferences. I had never spoken at a conference before that.
The Angular In Depth publication that I started less than 2 years ago has become the biggest reading destination online for Angular developers. We managed to achieve 300% growth this year and have crossed the 700k monthly views mark. A group of amazing people is helping me build it and we’re on our way to reach 1 million views a month quite soon. I had never written an article before that.
The fast growth of Angular In Depth significantly helped me get an amazing job as a Developer Advocate at ag-Grid. For the first time in my life I had a job where I am happy about every aspect. It allows me to grow professionally in web development and marketing at the same time. I’m given time to work on my publication that benefits both myself and ag-Grid. And on top of everything else, the job pays very well.
Through public speaking, StackOverflow and Angular In Depth activities I’ve had an impact on more than 5 million people worldwide. This all has helped me get recognition from both Google and Microsoft. I became a Google Developer Expert and Microsoft Most Valuable Professional which connected me with technology experts from all around the world.
But here’s the funny thing, less than 2 years ago I was ready to quit the tech industry in search of my true passion. And I had only been programming for 3 years before that. I didn’t even know that the Developer Advocate role existed. We have no jobs like that in Ukraine. It also had never even occurred to me that I’d speak at a conference one day, have a very popular blog and act as an inspiration for people. Heck, I didn’t even use Twitter or any other social network at that time.
I’ve always had a vision of what I wanted my life to be. I’m still not there, but I’m getting closer. Surprisingly, I never thought it would be the tech industry to get me there. I’m a big fan of motivational speeches, they keep me going through the dark nights of the soul. Les Brown, who I admire, once said “Don’t worry about
HOW you’re going to make your dreams happen. The
HOW is none of your business”. Life is a mystery. As it unfolds new opportunities arise. This is a story of taking opportunities as they manifest themselves. A story of setting goals leading to a dream and achieving them. And what it takes to do that.
I’ve actually been a little bit hesitant to write this article. Mostly because what I’ve achieved is drop in the ocean compared to what’s achieved by greats like Elon Musk and Bill Gates. These guys inspire with their grand visions and achievements. However readers leaving comments on my articles use the word “inspire” more and more. So maybe it’s time I told my story and hopefully it will inspire others. And I benefit from it as well:
Your contributions can change someone’s life for sure.
— Rohit Sharma
Because of the comments like that I’ve gone this far. Thanks everyone for your support!
My country Ukraine is notorious for being in a constant state of economic crisis. Because of that and despite working really hard, I could never get myself a comfortable life. But as luck would have it, it would be the recent crisis to make me stay in the industry for a while to improve my life.
While I was hanging out, a new technology called Angular came out. It was a complete re-write of the AngularJS framework. Based on the popularity of its predecessor, this technology had huge potential and presented amazing opportunities. I knew that since it was a new thing, anyone willing to fill the knowledge gap would get a first-mover advantage.
Such opportunities are around us all the time, but we rarely recognize them. I decided to focus on in-depth insights into the framework internals. This decision is in line with my curious nature, but it also turned out to be a viable competitive advantage. No one was doing that and so the information I produced was unique.
Once I set my sights on this task, I did almost nothing else. I’d work 6-8 hours at my full-time job, and then sit the remaining hours in front of the computer trying to figure out how the framework worked. Most weekends would be spent in the same way. As I was acquiring unique knowledge, I started contributing more and more on StackOverflow. Learning Angular and answering questions became the activity that took up most of my free time. The remaining time would be split between working, eating, sleeping and my significant other.
I set myself the goal of reaching 10k of reputation.
So I ran to the end of the road. And when I got there, I thought maybe I’d run to the end of town. And when I got there, I thought maybe I’d just run across Greenbow County. And I figured, since I run this far, maybe I’d just run across the great state of Alabama. And that’s what I did.
— Forrest Gump
It took me about a year to reach that goal. When I got there, I thought maybe I’d go for 25k. This time it took me about 6 months. Over the period of 18 months I’ve given more than 700 answers. And then I figured, since I’ve spent so much time and learned a lot, why not use this knowledge and start blogging.
And that’s what I did. I started blogging. I’d try to post a new article about Angular internals every week. I’d continue splitting my time between a full-time job and my writing activities. I started with 100 views per month. By keeping this schedule over a period of 18 months I’ve written 50 articles and got to close to 300k monthly views.
Somewhere in the middle of my journey I realized I wanted to build the biggest publication about Angular. That became my new goal. I couldn’t do it myself and needed help. So I started actively seeking out new writers and asking them to publish their stories on Angular In Depth. I’d help them with review and give them exposure to the Angular In Depth followers base. That would be my unique value proposition. Surprisingly, many active writers would opt for publishing with Angular In Depth because they believed in the publication’s mission and wanted to be part of it.
Some ideas for my articles came from Angular conferences I watched on YouTube. As more and more people were reading my articles, my reputation started building up. And I figured, since I’ve gone this far, maybe I’d just apply to the biggest conferences in the world. Speaking experience was one thing missing from my application to become a Google Developer Expert. So that’s what I did. And I got selected.
The story above is something you might read in a typical book on success. It recounts facts, but doesn’t mention obstacles I’ve gone through, emotions I had to face, people who helped me and lessons I’ve learned.
If you’re curious about the full story, read on.
How I and Justin Musk see hard work
It seems that today the practice of an extreme work ethic and personal sacrifices in favor of professional growth is condemned in tech industry. From my experience, this sentiment is especially true among employees of big tech companies where work/life balance is encouraged. On the other hand, hard work and pushing yourself to the limit is celebrated and is even considered the only option in sports and the startup industry. Perhaps, both are correct.
I’ve worked extremely hard all my life. It’s definitely taken its toll on me. I’ve been burnt out several times. I have chronic daily headaches and prolonged fatigue. But honestly, when I look back at my life and think about all I’ve gone through to get here I have no regrets. I’ve always lived my life the way I thought was right, not what other people thought was right. I strongly believe that this way of thinking has paid off.
That’s not to say I don’t get angry at the circumstances that have required me to work so hard. And that I don’t think about giving it all up and just enjoying life in leisure. During these moments I often wonder if I’d be working that hard if conditions were different. For example, if I got into the tech industry earlier. Say at 18, instead of 27. Or if tech industry was booming in my country as it is in the US and other hi-tech countries. Or if I got a top-notch education and graduated from a leading university. Or if I had someone to provide for me while I was studying or learning the required skills to pursue my passion. Or if I was born into a well-off family and didn’t have to work from a young age. Maybe I would’ve achieved all my dreams by now. Maybe I’d get there by working half as much. Or maybe, I wouldn’t have these dreams or the ambitions to achieve them.
Were you lucky enough to have those favorable conditions in your life? That’s great for you. Maybe you don’t need to work as hard. For the rest of us with a disadvantaged background, hard work is the only option. Most of us can’t simply quit our job and pursue our passion. We have to pay rent. We have to buy food to eat. We have to buy clothes. We need to be employed most of the time. However, to switch jobs, we need to have the required skills or build side projects showing the expertise. Developing those skills takes time. Often a lot. And the time after work or on weekends is when it’s done. And God forbid you have ambitious goals like changing the world, then this work schedule becomes your permanent state:
We live in a culture that celebrates determination and hard work, but understand: these are the qualities that keep you in the game after most everybody else has left, or until somebody bigger and stronger picks you up and hurls you back out to sea. Determination and hard work are necessary, yes, but they are the minimum requirements. As in: the bare minimum.
— Justin Musk on achieving extraordinary success
It’s impossible to work that many hours and still find time to live a full life. You won’t be able to have time for leisure like: watching a movie, partying or hanging out with friends. These are the things that you need to sacrifice. And you can do that. But I can’t stress enough that you can’t sacrifice your health. Try to exercise everyday, eat healthy food and sleep at least 7 hours a day. And you’re very lucky if you have a relationship where your significant other supports you and shares your vision of the future. Make sure to always find time to spend together.
Regardless of your circumstances, it’s never to late to start working on something. Improving yourself, learning new skills, building a startup, changing the world. In ten years you’ll wish you started today. I particularly like this Chinese proverb: “The best time to plant a tree was 20 years ago. The second best time is now.”
A failed startup that made me learn to program
I’d never seen myself as a programmer. I don’t have a Computer Science background, I hold an MS in marketing. A little more than 5 years ago I registered on StackOverflow to learn programming. At the time I was working on my first startup that helped teach English through reading.
The idea was simple. First we compiled a database of adapted texts. Then we designed a simple algorithm to choose texts for reading. When selecting the next text, we searched in the database for a text with the highest occurrence of the words from a user dictionary. Repeated encounters led to better retention.
I paid the editors who compiled and processed text out of my own pocket. But to implement the functionality I had to learn at least basic programming. So I learned basic frontend and backend languages on my own. I had a full-time job during that period, but I also had to find time to learn programming and work on the project.
For about 2 years I pulled 80–100 hours surviving on about 5 hours of sleep a night. I got to the office at 7 am and left for home at around 11 pm. During the day I alternated between my own project and my full-time job activities. It was crazy. This is the point in my life when I became addicted to motivational speeches. It’s simply impossible to go through such intense and focused lifestyle without having someone by your side to push you. To make you believe in yourself. To share your dream. I literally feel as if these motivational speakers, great athletes and change makers talk directly to me when I’m listening to a recording.
Unfortunately, despite all my efforts, the project failed. However, all those hours I spent learning and programming got me the necessary skills to land a job as a web developer. But I wasn’t going to stop there. I continued to put a lot of effort into educating myself.
StackOverflow activity that created a foundation
Throughout my career I’ve always tried to spend at least two hours a day reading books, blogs or source code. The knowledge I acquired often allowed me to take on tasks that others couldn’t or weren’t willing to do, and complete them quicker.
As a result I was promoted several times finally reaching the wage ceiling in my country. To go beyond that, I needed to find a remote high-paying job somewhere in the US. I didn’t want a company to hire me just because I’d cost them less money. I wanted them to hire me because I’d be very good at what I did. And to prove that, I needed a solid reputation.
At the time, the only website I knew where I could build such reputation was StackOverflow (SO). I’m a big fan of SO and attribute a lot of my knowledge to the community. I’ve asked more than 850 questions on various topics. But to build reputation, I had to start answering questions. After reaching 10k reputation, I planned to apply to companies through SO and get a remote job.
…don’t be afraid to dream big. But remember, dreams without goals are just dreams and they ultimately fuel disappointment… to achieve these goals you must apply discipline and consistency.
— Denzel Washington
Anyone who tried to build reputation on SO knows about its challenges. Particularly, pretty fierce competition from existing users with high reputation. They usually respond faster and give more elaborate answers. By the time I’d figure out an answer and post it, there would be already multiples answers which would get upvoted. Earning even first 5k with this pace would take me years.
Everyone who’s read books on startups or marketing knows that it’s a lot easier to get traction on new platforms or technologies that grow very quickly. Just around that time a new framework called Angular came along. Since there wasn’t enough knowledge available it opened up a great opportunity. I’d focus specifically on this framework and become an expert by studying sources and learning the internal workings. Then, I’d make highly technical answers with links to the sources my trademark. At the time, nobody, except for my friend Alexey Zuev, whom I met on SO was doing that.
Magicians keep secrets that are unknown to general public. I was one kind of a magician who possessed secrets about the framework internals. But instead of concealing them, I’d make them available for the world of developers. It’s interesting that some of my readers drew that analogy and started calling me Wizard. That’s how this name stuck with me ?.
I started spending about 5 hours a day digging into the sources of Angular and answering questions on SO. My daily routine would be very similar to the times of my startup. As I was working full-time, I’d arrive at work early in the morning, like 7.30 AM and have about 3 hours until everyone else came to office. I don’t know what it is about me but I like that feeling when I’m the only person at the office. That’s why I’d probably go to the office to work on my side projects instead of staying at home. I’d also be the last one to leave the office as I’d usually spend about 2 hours after work on this activity. Most weekends would be taken up by that activity as well.
Although my initial goal on SO was to build reputation and find a higher paying job, the fact that my answers helped other developers would give me an extra boost of motivation. I really like to help people. And I like to teach. So every “thanks” I’d get would lift my mood and give me strength to persist.
Gradually my reputation started building up. Once I reached 10k in about a year, I checked the “Total Reputation” section to see the breakdown for my reputation level. It turned out that the 10k mark was the 4th from the top, preceded by 25, 50 and 100k.
On StackOverflow, once you reach 25k you get all possible privileges like closing/opening questions etc. So I figured why not go for that. It took me about 6 months to get to 25k. After that I almost stopped answering questions. But the answers I gave continued getting views and upvotes, so I’ve already crossed 50k. Here you can see the growth diagram of my reputation:
Although I reached my reputation goals on SO, I never got even one interview. I applied to numerous companies through the website but never even got a reply. So StackOverflow didn’t really work for me as a job searching tool. But after spending so much time digging into sources and answering questions I learned so much. All this knowledge and the answers were the perfect material for articles. So I wondered if I should put it all into a blog post, or maybe even a few.
I’ve always wanted to write, I just didn’t know what to write about. And now I had a list of topics proven to be interesting to the community. Teaching is my passion and blogging is a way of teaching that can reach a far greater number of people that what you can gather in a classroom. So I started writing.
Combining focus on excellence with blogging
Writing is hard and time consuming. Similarly to my previous lifestyle, my early mornings and evenings were occupied by research and writing. As I no longer was spending time answering questions on SO, I had about 5 hours a day for writing plus weekends. I didn’t really have an idea of how many articles I wanted to write. I just set myself a goal to write a new article every week.
Once I had written my first 10 articles and got my first thousand followers, I decided to start a publication. I named it Angular In Depth. Most startup founders say they created something out of necessity. They needed something that didn’t exist. That’s probably true in my case. At the time there was no publication where you could learn about the internals of the Angular framework. I envisioned a publication where you could get all the necessary information not only to become an expert, but also to start contributing. I would publish articles on the most difficult concepts mixed with implementation details.
Building an audience is hard work as everyone knows who started blogging in the recent years. You can’t just write a few articles and expect people to come. In fact, in the modern age of content shock there’s a chance nobody will even see your article. I didn’t have a followership of any kind so I chose Medium as it promised to help with promotion. My first articles had very few views and almost no fans. Something like this:
Medium helped a little but I definitely needed to start promoting articles on my own. To increase visibility, I decided to publish my articles in existing publications like HackerNoon and FreeCodeCamp. These publications had tens of thousand of followers at the time. While I managed to publish my articles with Hackernoon quite effortlessly, it took me about 3 months to get my articles published in freeCodeCamp. I wrote 10 emails to Quincy Larson, tweeted him 5 times and then sent a few direct messages. For most of them I didn’t get any reply. Quincy was the only contact person back then so I can only assume how many emails and tweets he received on a daily basis. Finally he published my article. Perseverance is definitely a great element of success.
Yet, these publications with massive followership didn’t give me the boost I was hoping for. Mainly because these publications were followed by developers who where using frameworks other than Angular and weren’t really interested to read about it. It’s pretty depressing to spend a week or two on an article and then have just a few people read it. That was another reason for creating Angular In Depth. I wanted to have a publication focused specifically on Angular and the audience interested in the framework.
Without promotion, something terrible happens… nothing!
Once I created the publication, I went on a promotion spree. I posted links to my articles everywhere it seemed appropriate. I went too far into the dark side ?. Almost every answer I gave on SO would include a link to one or more articles I’d written. I would also add a link to an article in the comments. Here’s an example of my comments to one of most popular Angular questions which has been viewed almost 300k times:
And here’s my answer with a bunch of article links in the body:
I would specifically answer questions where I knew I could reference one of my articles. I would also answer existing questions from the list of most popular questions. If the question was general enough and I didn’t have an article for that topic, I’d write one. This was my link building strategy.
Besides that, to increase brand awareness of Angular In Depth, I even renamed my profile name on StackOverflow to AngularInDepth.com. I’d also add articles to Reddit and hacker news.
A big chunk of traffic to my articles came through Google search. Some of my articles ranked in the top 3 of search results. I assume that happened because of the great number of do-follow links I created on SO. These are the type of links that are used for rankings by search engines. Most existing content creation platforms don’t allow that type of links. When you put a link on a tweet, it’s a no-follow link. When you link from one post on Medium to the other, it’s a no-follow link. When you link to your article on StackOverflow, it’s usually a no-follow link. However, once an answer gets some undisclosed number of up-votes, the link in the answer becomes a do-follow. Most of my answers have tens of upvotes. That’s what I believe significantly helped ranking.
The other path I tried to take was to ask people with large followership base on Medium or Twitter to mention my articles. It didn’t quite work for me. At least not until I had some reputation. Steve Jobs once said “I’ve never found anybody who didn’t want to help me when I’ve asked them for help”. My experience on these platforms was different. For some reason, influencers with tens of thousands of followers don’t usually re-tweet articles from strangers.
Maybe it’s because they have a lot of followers and are protective of their reputation. To help someone promote their content is in essence to associate your name with their content. You have to verify if their content is actually good, and that takes time. It takes even more time to give detailed feedback. But what’s actually most upsetting is that they rarely even respond. Maybe they get too many requests. Or maybe they are not active on these platforms.
Sending tweets and emails to people and getting no response back is really frustrating. But it doesn’t mean you shouldn’t try to reach out and ask for help. Persistence is the key. Most successful leaders like Jack Ma and John Paul DeJoria continuously emphasize the importance of being able to handle rejection. That’s part of life. So I kept trying and I started meeting people willing to help along the way.
I became good friends with Uri Shaked after I left a comment under his article and we met online. He inspired me to continue growing Angular In Depth and start speaking at conferences. He introduced me to the community aspect of a technology. It was exactly after the talk with him that I decided to become a Developer Advocate one day. He also was the first one to help me promote my articles on Twitter and the first contributor to Angular In Depth. He introduced me to Shai Reznik who gave me some of the best advice on presenting at a conference.
On StackOverflow, I met Alexey Zuev, who helped me figure out implementation details of Angular and helped promote my answers. I was surprised to get a message from Asim Hussain letting me know that “he loved what I was doing and the articles I was writing”. Every writer wants his work to be appreciated. This message from Asim encouraged me to write even more actively. He was the first one to help me with my CFPs and answered a lot of my questions regarding the community. I was also very lucky to meet Dan Abramov during my recent trip to London. He reviewed my articles and helped with promotion.
If you want to be successful, be excellent. If you want the best the world has to offer, offer the world your best. — Oprah Winfrey
I always wanted to produce exceptionally good content. Some of my articles took me literally months to write. I often needed to spend considerable amount of time reading books or source code before I could figure out how to explain a topic. I specifically wanted to be known for in-depth and unique content. I may be a bit of perfectionist, but I don’t let the fear of failure to stop me from publishing an article. Whatever I do I want to ensure that I’ve done my best. As Vince Lombardi said perfection is not attainable, but if we chase perfection we can catch excellence. I believe that people are willing to help you more if they know you’re trying like hell and doing your best.
So eventually the publication started to take off. This diagram demonstrates the stats for my articles over the period of last two years:
As you can see, it’s quite an impressive growth, with about 300% in just the last year. And these are my articles alone. To date, I’ve written 67 articles. However, Angular In Depth is no longer my personal blog. It’s now a community of awesome developers and in the next chapter I’ll tell you how this transition happened.
Now that I look at it, it’s clear that my activity on StackOverflow had a significant impact on my decision to start blogging. And, through the links I posted in my answers it also helped bring significant traffic to Angular In Depth. And it also helped improve my writing skills. I was practicing daily to write clearly and structure my thoughts in an easy-to-follow way.
That’s similar to how success in life works. Just like a bamboo tree that grows very little for the first 4 years. But then, suddenly in the 5th year, they grow very fast and end up being one of the tallest plants on the planet. You put in effort everyday, you learn new stuff everyday, you practice a new skill everyday. It may not be immediately obvious where and when you’ll need them. But I promise you, once you’ve got the skills, as life unfolds you’ll find the opportunity to use them. As Steve Jobs said you have to trust that the dots will somehow connect in your future.
Building the biggest publication with friends
Even with all that growth, I still wasn’t sure where to go with Angular In Depth. The growth was fueled primarily by my articles, but after a marathon of writing that lasted more than a year I was pretty exhausted. I remember I was talking to Uri Shaked about the traction the publication got and how I didn’t know if I could continue with that pace. Uri encouraged me to continue developing it. He believed that Angular In Depth was already a recognizable brand in the Angular community and it would be unwise to stop working on it. Inspired, I set myself a new ambitious goal to make Angular In Depth the biggest Angular publication.
I expressed that idea in this Tweet:
It was clear for me that I couldn’t do it alone. I needed help from other people. Occasionally I’d publish a story from other writers who got it touch with me personally, but to continue growing Angular In Depth needed a group of people who would produce content on a regular basis.
I started looking for good articles on Medium and asking authors if they wanted to publish them in Angular In Depth. Writers usually want to publish their articles in publications with the biggest reach. As Angular In Depth was growing and the number of followers exceeded 10k, writers became more willing to publish in Angular In Depth.
However, in the beginning, while Angular In Depth was still small, writers would publish in Angular In Depth mainly because of the quality of articles already available. Some followed Angular In Depth for quite some time and used the materials to solve technical challenges at work. They believed in the mission of Angular In Depth and wanted to make it happen. That’s the kind of people you need when building something new. People who are passionate about the problem you’re trying to solve.
I’m thankful to Uri Shaked and Nicholas Jamieson for believing in Angular In Depth from the beginning even when the publication wasn’t popular. They were affluent community members and their contributions significantly helped establish the credibility of the publication. Then I started getting messages on Twitter from developers who wanted to post at Angular In Depth. Two of them were Tim Deschryver and Nate Lapinski who would later become two of the most active writers and members of our internal group. I also got an email from Todd Palmer who today not only writes articles, but also helps our non-native writers with grammar and phrasing. He became our first in-house editor.
Up to this point I was communicating with Angular In Depth writers one-on-one and mostly on Twitter. I wanted to have a place for all Angular In Depth writers to discuss topics for articles and provide reviews. There, writers could get feedback for their articles before thousands of developers read them. They could get advice from more experienced writers. But I wanted to go beyond writing. I like to help people and see them grow personally and professionally. I envisioned a community with each member helping others achieve that growth.
A few months before that, I had been added to the GDE Slack chat where all GDEs talk to each other. I borrowed that idea and created a Slack channel for for members of Angular In Depth. The first people to join where Tim Deschryver, Nicholas Jamieson, Uri Shaked, Todd Palmer and Alex Okrushko who are the most active members of Angular In Depth. I also asked Jia Li and Alexey Zuev to join who helped me figure out some technical implementation details.
Over time more than 20 people joined the chat. Of course, some members are not particularly active. But I’m really happy to see more and more people get involved in the conversations. The community magic doesn’t happen when our members simply get comments as part of reviews. It happens when those people begin talking to each other and discussing various topics. This isn’t something that can be created or forced. It happens organically. And I’m witnessing this magic happen in the Angular In Depth community every day.
It’s interesting that when I asked the active members of AiD what made them start contributing, most said the quality of the AiD content turned out to be the dominant factor. It inspired them. It awakened a desire to be part of it. Having an article published alongside other prominent members of Angular In Depth gives them a sense of belonging, brings joy and satisfaction.
But, of course, deep down every writer also wants recognition. It’s quite discouraging to publish an article you’ve spent weeks writing and see only a few people read it. On the other hand, knowing that there’s a strong community who will be reading and benefiting from each article is a great source of motivation. We now have more than 16k followers who regularly read new articles published on Angular In Depth.
I’m still learning how to build communities from scratch. It seems that you yourself must have a solid reputation first so that people gather around you. You need to inspire them through personal achievements. And then you have to help these people to grow. You have to provide value for people. I’m trying like hell to do that. I provide technical reviews, share my opinion, promote their articles and encourage them to become more active in the web development community. They become known, which often leads to promotions at their jobs or lucrative side projects.
I also get a lot of emotional value myself from the Angular In Depth community. It’s an amazing group of technically strong engineers passionate about web development. It’s the best team of like-minded people I’ve ever worked with. They are ambitious and hungry for knowledge. They are willing to make sacrifices necessary to grow and make an impact. In some way, they are my soulmates. They support me and inspire to go on.
Angular In Depth is growing really fast. Just one year ago we had only 6k followers and a little over 500k in total views. It’s still hard to believe, but this is now how many views we get every single month. And the number of total views is 5 million! But, we still have a lot of work to do. Next year, our goal is to reach 1 million monthly views with a total of 10 000 000 views for the year.
I’m very happy with these numbers. However, what brings me even more joy is that today articles written by Angular In Depth members other than me account for about half of all views. I’m thankful to everyone who decided to publish their work with Angular In Depth. It’s also interesting that 850k of “minutes read” are more than 1.5 years of time spent reading the content. In other words, this is the equivalent of having ~70 people working full-time reading the content.
Public speaking as final frontier to becoming known
I’m trying to remember now how and when I decided to start speaking at conferences. It seems that there wasn’t one particular thing that led me to this decision. It was a combination of things. Uri Shaked and Asim Hussain who I talked to a lot were public speakers. I’d use talks from conferences as a source of ideas for my articles. I’d sometimes see people on Twitter tweet about their speaking experience. So I decided this was something I wanted to do.
Interestingly, in his book “Known”, Mark Schaefer suggests that public speaking is the fastest track to becoming known. It helps you connect to a real audience. And live speaking more than anything else ignites awareness and imparts credibility and authority. Conferences are a perfect environment for networking. It’s a place where you can have interesting conversations with like-minded people, thought leaders and experts in your field. Through these personal interactions you can strengthen your relationships with people you met online, e.g. on Twitter. Before I go to a conference, I usually tweet about it and arrange a few meetings upfront.
Sometimes though, you meet people you never expected to find there. For example, at FrameworkSummit I met Patrick who’s one of the YCombinator graduates. His startup tipe.io was sponsoring the conference and Joe Eames introduced me to him. He gave me a lot of advice regarding YCombinator and my future ventures.
Often, people become public speakers after writing a book. But in tech, we have so many meetups that becoming a public speaker is much easier, especially given that some meetups record and publish all the talks in high quality video. I personally didn’t speak at meetups before speaking at conferences. And I haven’t written a book, but I still want to do that in the future. However, I’ve been accepted to all conferences I applied to without prior speaking experience. This is where I believe my blogging activities and networking helped a lot. Whereas the success of Angular In Depth was founded on my activity on StackOverflow, my successful applications are founded on my reputation built through Angular In Depth. By the time I decided to apply to NgVikings and NgConf, I had already established a reputation in the Angular community. Some of my articles were ranked in the top 3 of search results, which I made sure to mention in each application.
Getting to know organizers before you apply is very important. They can give you incredibly helpful advice and even review your CFPs. And simply talking to them will give you a boost of confidence and motivation. Joe Eames, Pete Bacon Darwin and Maxim Salnikov played a major role in my journey to become a speaker. NgVikings, organized by Maxim, was the first conference I was accepted to speak at. Joe runs ng-conf, the biggest Angular conference in the world. A year ago on New Year’s Eve he was reviewing my CFP to ensure I’d get the best chance of being accepted. And I got in. And Pete is the organizer of AngularConnect. He also helped me review my CFP this year.
Those who dare to fail miserably can achieve greatly.
— John F. Kennedy
I realize it may be difficult to reach out to people. Not all of us have outgoing personalities. You’ll face rejections. But don’t let that stop you. Use every opportunity you get. For example, here’s how I met Joe Eames. I was a guest at a show called Adventures in Angular where Joe was one of the panelists. It was about a year ago. At that time I had only started thinking about speaking and didn’t really know anyone in the community. So after the show everyone left expect for Joe. I asked him if he could stay so we could have a little chat. I wanted to ask some questions about the community. To start the conversation, I asked him what he was doing for life. He recounted his occupations and then briefly mentioned that he’s a co-organizer of ng-conf. What luck! I immediately asked him if he could help me with my CFPs. That’s how fortune often works. You can’t know when and where you’ll meet someone who’ll help you move forward. Joe was actually so supportive that he even reviewed some of my CFPs on New Year’s Eve!
Once I knew I got accepted, I started my preparation. Becoming an effective public speaker can require years of practice. I didn’t have it, so I tried to compensate by spending enormous amounts of time preparing for my talk. As far as I can tell by the number of views and likes, my talks were very well accepted by the community.
I usually spend about 2–3 full weeks to prepare for my talk. This includes research, outlining a presentation, putting the written version down and recording myself. I then listen to how it sounds and make changes. Then I record the presentation again and send to my fellow developers for review. Once I get feedback, I make even more adjustments. And then, finally, I memorize my talk and rehearse it about 15–20 times. I commit everything to memory so that I don’t need to waste time trying to figure out what I want to say. Sarah Drasner practices her speech until she can’t stand the sound of her voice. And then rehearses a little bit more.
I still have a long way to go as a public speaker. I started working on my accent and English fluency. I plan to take theater classes to improve my stage presence. I want to learn how to relax and smile more during the talk. And I need to overcome my fear of making a grammar mistake and include more improvisation into my talks. Some conferences, like ng-conf, provide a great opportunity to work with a professional speaking coach. I used that opportunity the previous time and hope to get a chance to work with the coach this year.
Getting my first job ever where I’m happy
Do you remember my goal of landing a remote job in the UK or USA which spurred my activity on StackOverflow? Well, about half a year ago I finally managed to achieve that goal. In the beginning of the summer I started working as a Developer Advocate at ag-Grid.
I firmly believe that getting this job was made possible by everything else I’ve done during these two years. And I can say without exaggeration that it’s the best company I’ve ever worked for. It’s a relatively small company which actually offers a number of upsides.
First, it means that my work has a direct and visible impact on the company’s performance. This is something Asim Hussain stressed several times when I asked for his advice on this role. It really brings me joy to see the numbers for impressions, visitors and leads that my work generates.
Second, it means that I’m working very closely with the company’s founder Niall Crosby. Again, it may sound far-fetched, but he’s the best boss I’ve ever had. I have learned so much from him. He’s very knowledgeable and honest. And that means I can be honest with him as well. I really enjoy our discussions about building a company from the ground-up and he gives me new perspectives on life. He even helped me review this article. During our first conversation Niall said that your dreams are not being big enough if they don’t scare you. I’ve always been a big dreamer and that was what I immediately liked about him.
Third, with this job I have the opportunity to develop my skills in several areas in parallel and work on my personal projects. I often think about my work at ag-Grid as a partnership. Here, my primary activities are targeted towards making people aware of our products. This is marketing, my background. With regards to my work, this awareness is achieved through writing and speaking about technical topics. This is developing myself as a tech specialist. So you can see how I develop both my marketing and technical skills. What’s even more amazing is that Niall endorses me to post my articles on the Angular In Depth and React-In-Depth publications. Doing so benefits myself, the Angular In Depth community and the company. Trust me, to have an employer take this position is incredibly motivational. I’m often willing to do the job even on weekends and late evenings. I wonder if these kind of conditions can be replicated with other jobs. I may very well start thinking more about it quite soon.
So how did I get this position? As Angular In Depth became quite popular, companies started to get in touch with me wanting to write a guest post. One of them was ag-Grid. As I always do, I asked for a meeting to discuss the matter in details. During the meeting I also wondered if ag-Grid would be willing to sponsor Angular In Depth or maybe they even needed someone like myself to write articles for them. After the meeting I sent an email with the stats for the publication and my ideas on where I could help ag-Grid.
Niall looked through my articles over the weekends and according to his words, he really liked them. That’s again where my obsession with excellence worked to my benefit. But he was even more impressed with the work I’d done with Angular In Depth and the traction it got. He was willing to discuss our possible partnership. He wanted me to do the same for ag-Grid. Although this goal has somewhat changed over time, I’m sure Angular In Depth and its fast growth was one of reasons behind Niall’s interest in my offer.
I stated my salary expectations which were pretty high. Niall believes that the team should be local and remote working is not an option during the early stages of a company. And if we went with a remote option, I should be paid according to local salaries. This seemed fair. However my thinking was that I’d be doing a job that nobody else could do, and it didn’t really matter where I worked. Eventually, after exchanging a few emails back and forth we came up with an interesting scheme of Angular In Depth sponsorship and bonuses that would allow me to get the salary I wanted to get. Finally, I’ve reached my financial goal I set when I started my work on stackoverflow almost 2 years ago.
This concludes my 2 year journey. Where am I going to go next? I have limitless opportunities. And I’m even more optimistic about the future than I was two years ago when I started this journey.
If I continue my writing and speaking activities in the tech field, one day I may become some kind of a thought leader or influencer. If I choose that path, I definitely want to write a book on web development. I’ll also probably organize a few conferences in Ukraine. Or I may start coaching people. This is my true passion. Seeing other people grow is what brings me true joy. I started doing monthly mentoring sessions with developers. It’s still a very new area for me, but I’m optimistic.
Ideally, I’d want to find a way to combine my passion of coaching people with technology. After my first failed attempt at a startup, I’ve always been thinking about my next startup. Almost nothing works the first time you try it. Niall once told me that ag-Grid is his 5th attempt at trying to build a company. I believe I can transform Angular In Depth into some kind of educational platform. I don’t yet know what it will look like or what it will do. Maybe it’ll be something similar to Pluralsight with a focus on text based education instead of videos. Or maybe it’ll be something like StackOverflow with a mentorship part.
This enterprise may fail just as my first attempt did. As I showed you in this article, it’s impossible to predict the future and where your efforts will lead you. But if feels much better to have tried. To know that you gave it a chance. To take a risk like that. Try to do something big with your life. That’s not a waste.
Fear that things will go wrong is constant in my head. Cus D’Amato who coached Mike Tyson said that the difference between a coward and hero is in what they do, not what they feel. They are both afraid. So I’ll continue doing stuff regardless of my internal fear and I hope things will turn out well. But to start, we all have to believe that things are going to be better in the future. As Steve Jobs said, we have to trust in something — our gut, destiny, life, karma, whatever. And even it fails, I know for sure I’ll learn a lot from this experience and will use this knowledge when life presents me with another opportunity.
And yet, it might succeed. Now I have a greater chance of success because I’ve learned so much since my last attempt. I learned about the importance of SEO and content marketing at ag-Grid. I now have a community of extremely talented developers at Angular In Depth who can help me build this thing. I have support from a countless numbers of developers reading Angular In Depth. They may help me test out my ideas.
I haven’t written this article as a blueprint to become known or influential in the tech community. Peter Thiel says that the next Bill Gates won’t start an operating system. The next Larry Page won’t start a search engine. The next Mark Zuckerberg won’t start a social network company. If you are copying these people, you are not learning from them. I wanted to tell you my story to inspire you to keep improving yourself and looking for opportunities to apply the knowledge and skills in any area.
But whatever you choose to do in your life, you need to remember a few things. You need to believe in yourself. Throughout my career I’ve been told multiple times that I wasn’t a good programmer, was self-serving and a lousy team leader. But that doesn’t seem to be the case. In just in two years, I’ve helped and inspired directly or indirectly a lot of people through my articles, StackOverflow answers, conference talks or personal conversations. I’ve also managed to build an amazing team of engineers at Angular In Depth.
You need to have a vision for your life and believe that what you’re going through now will help you get there. You need to read books that will give you new perspectives on life and business. You need to strive to achieve excellence, stand out and do the things others aren’t willing to do. You need to work hard and try to have fun along the way. You need to find people who will help and inspire you and don’t get discouraged by people rejecting you. You need to be curious in what you do. And accept the role luck plays in humans endeavors and have faith that if you put enough effort that luck will find you.