Last month I published a blog post about how I traveled all around the world in 2018 speaking at conferences, giving workshops and contributing to open source community. I also wrote what downsides for me are and that I am considering switching to being developer advocate because of various reasons. So I tried to mind map for myself what are pros and cons of being independent consultant vs. being a developer advocate or software architect.
The main benefit for me was the ability to be involved in lots of exciting projects where I can do my best as well as learning from smart people and expand my tech knowledge further. Another essential part was being able to work remotely and travel contributing acquired knowledge to the community by either speaking at conferences or conducting workshops around the globe.
Being an independent consultant is awesome, but it comes with downsides. The main disadvantage is that you need to plan for sometimes you can be left without projects or have too many at the same time and get burnt out. And the most problematic part of being an independent consultant is conference travel. It’s true that conference organizers usually pay for flight and accommodation, but you never can work full time when you are at the conference, and you need to be creative with business meetings. So in a sense, you work in less capacity that you would have worked when not traveling. For an independent consultant, it means loss of income. Imagine if you are on a conference streak and you need to do all these pitch meetings to potential clients. It can be and has been chaotic.
You can say, — “well, you don’t need to speak at so many conferences”. It’s true, but I really like teaching people using technology I believe is a future. And I guess I’m hooked to this 😉
So we figured out what are cool things as well as not so cool things about being an independent consultant, which also wants to reach to more people speaking at conferences. Now, what about being a developer advocate?
Developer advocate / Technical evangelist / Developer relations is basically a job title that means that you will bridge company product and developer community. This job involves lots of experimenting with usually awesome tech, speaking at conferences, meetups, doing workshops, writing blog posts and contributing to community teaching it to use company product. So it sounds fantastic except for one thing -Company product.
I didn’t want to be limited to one product. I tried to keep my options open to experiment and work on anything that I find interesting, but it seemed like I need to find a compromise. Or don’t I? 😉
There are plenty of developer advocate job positions, and while working for most of them you will be advocating a company product, a tiny amount of companies actually have open source products that worth advocating for.
So what I was looking for? I guess for a company with developer faced product that I will believe in. My first thought was about Hasura
So If you are not familiar with hasura.io, It’s a company that gives you serverless real-time GraphQL API on the Postgres database. You can write your APIs from scratch, you can migrate them from your existing Postgres database, or you can even migrate from firebase using firebase2graphql or also move from JSON to GraphQL on Postgres using json2graphql. You can then deploy your API to any cloud of your choice.
The cool thing is that Hasura engine is open source (you can check them out on Github) and written in Haskell (you probably aware of the fact that I am a big fan of functional programming and if you are not, check my recent Bootcamp on ReasonML).
Hasura is also a mastermind behind 3factor.app architecture that I’ve been a big fan of it for quite some time. 3factor.app architecture, in a nutshell, is talking about using real-time GraphQL, async serverless and reliable event sourcing for architecting your web and mobile apps. In fact, it’s not limited only to the web and mobile. I will be doing some AR and IoT experiments with it shortly
So long story short, I will be joining Hasura as Developer Advocate 🎉
Now it makes perfect sense for me. I will be helping developers fighting old architecture practices with serverless and GraphQL on all fronts of Web/Mobile/AR/VR/IoT and AI
I will be advocating for ideas that I strongly believe in and which are open source.
So what it means for my potential clients or for me. I will be releasing a lot more content in the upcoming months, related to Hasura platform as well as related to the ecosystem, which means serverless, GraphQL, Postgress, 3factor.app architecture, event sourcing and much more. I will also release more content in ReasonML since I will be still contributing to bs-react-native, bs-react-navigation and bunch of other ReasonML open source projects. I will be starting my podcast so stay tuned for the official announcement. I will also begin weekly live coding stream where we will do various experiments with GraphQL.
Regarding my upcoming conferences, I am already confirmed for
- NDC Porto
- DevDays Europe
- Chain React
- React India
and more conferences are in the pipeline, but generally speaking, if you want me to speak at your conference, you can pick a topic of my talk or workshop proposals list here: https://github.com/vnovick/presentation-proposals
If at some point you want to reach out to me, say hi, chat, get a consultation on your project, feel free to DM me on Twitter. And if you thought about hiring me for a project, I might have minimal availability for consulting projects, but even if I cannot squeeze in a couple of hours to consult you on a project, I definitely can connect you with people and agencies that I trust, which definitely can help you out.
Stay tuned for more content here. Exciting times are ahead. 😉