My rambling journey into a career working on Ethereum and the decentralized web
--
I began my career as a software engineer in 2011 working for a small consultancy in Denver named Fusionbox. At the time I had roughly zero professional experience writing software. This was my first job with benefits and a salary.
After three years of consulting work I was ready for new challenges. I took a position at a product company in Boulder named Simple Energy. I would spend the next year and some change building their python team and leading a rewrite of their legacy application. Simple Energy out of runway and I was part of the layoffs.
Enter Ethereum stage left. At this point I had been an armchair bitcoin enthusiast for a while. I had enjoyed the convenience and quality from certain early bitcoin dark markets. I was sure bitcoin was the future. I had also never written a single line of code to interact with the platform. It never even really occurred to me that was something people did. I had a high level understanding of bitcoin and blockchains but the idea of building an application on the platform was still shrouded in mystery.
My interest in Bitcoin led me to Ethereum. I recall it being announced to much excitement. I recall it being labeled a scam. I recall not understanding what it was in the slightest.
But despite my lack of understanding I ended up putting a few BTC into the crowdsale. Over the coming months I would read every single post from the Ethereum blog. The picture was slowly coming into focus. Little did I know that a foundation was being laid for a career I didn’t know I wanted.
When the frontier network came online I was halfway through a two month contract to hire. The founder and I were not seeing eye to eye and had decided to part ways when my contract was up. I spent the remaining month finding a new job and exploring this new “Ethereum” thing.
By the time that month was wrapping up I had published the first release of and experimental smart contract development framework called Populus and was starting to work on Ethereum Alarm Clock. Ethereum was new and exciting. The potential for this thing was slowly being revealed to me and I wanted to work with it full time.
At the time, Ethereum was new and unpredictable. To dive into something that new is to bring my wife and 18 month old son along with me and I couldn’t justify exposing them to that much risk. Ethereum would need to remain on the sidelines of my life for a bit longer.
I took a job at a software consultancy named Quick Left. My previous experience working for a consultancy left me cautious, but this company looked different. Over the coming months I would regularly feel like the crazy person, ranting about the decentralized web, Ethereum and a future that still sounds a lot like science fiction. I gave an Introduction to Ethereum talk to the Javascript meetup hosted by our company.
Quick Left turned out to be an amazing place to work. Shortly after starting I asked about attending Devcon One in London. At this time, Ether was sitting at about $1 and there was roughly zero mainstream news or hype about the platform. Quick Left wasn’t quite up for footing the bill, but they did let me attend without taking any time off of work.
I came home from London completely blown away by the Ethereum community. It was the first time I’d ever been in a room with other people who really knew about the platform. My time there was a torrent of conversations on topics that had been relentlessly spinning in my head for months. It was nothing short of trans-formative.
I also came home with some leads on Ethereum based consulting work. I spoke to our leadership about the idea of chasing these down and to my general surprise, they were nothing but supportive. This was probably the secret sauce of what made Quick Left a great place to work. If you were really into something, they would support you in exploring it. More companies should try this.
For the next six months I would work almost exclusively on Ethereum based consulting work. I recall our CTO telling me that in the beginning he’d stated privately to someone else in the company that we would “Never earn a single dollar related to Ethereum”. I can’t say it doesn’t feel good to have things turn out in your favor.
All of this changed one morning in May 2016. I showed up at the office to find a number of people I didn’t recognize and the large conference room being prepared for an all hands meeting. Quick Left had been quietly struggling to make payroll for a few months. Consulting work, especially high quality consulting work is a difficult business model. The average person can’t tell the difference between a product hacked together with Wordpress plugins and a well crafted application. The differences show up quickly as time passes, but at first, they can look very similar to the untrained eye. Why pay $100 an hour when this other company is only charging $40?
We were being purchased by Cognizant, a very large enterprise technology company who wanted our secret sauce. We were modern and nimble in our software development practices and Cognizant wanted all of it. All current projects were immediately terminated as part of the acquisition. I had to say goodbye to the decentralized insurance platform as well as consulting with the Ethereum Foundation on Casper. It was a major setback.
I ended up deciding to stay on and see how things went. While Ethereum was maturing it was still young. Most of the job offers I was getting still felt risky and while I knew Ethereum was what I wanted to work on wasn’t sure I was ready to make that move. I also knew that a company like Cognizant would be exploring blockchain based solutions. As much as I loathed being a cog in such a giant corporate machine, I thought it might open up opportunities that would otherwise be closed to me.
The next few months involved a lot of change at Quick Left, now Cognizant Quick Left (or CQL if you’re into the whole brevity thing). We were transitioning from being a company that built web applications into something else. We still did some of the web application stuff but it was intermittent. We were creating a training program designed to teach other people from Cognizant how we made software. Things seemed to shift and change from week to week and there often weren’t answers for where we were going or what we were doing. Nothing has served as a better illustration for the inefficiency and slowness that seems to be common among very large companies.
During this time the term blockchain is being tossed around constantly. I knew that somewhere within Cognizant there was a group focused on blockchain based solutions. The problem was we couldn’t seem to find it. The pessimist in me worried that all the blockchain talk was merely the carrot to keep me onboard. The optimist in me looked to Hanlon’s Razor to explain things:
“Never attribute to malice that which is adequately explained by stupidity”
I expected that if I waited long enough that I would find myself doing some semblance of the work I wanted to be doing. In fact, I actually was doing the work I wanted to be doing. My boss had carved out a role for me within the company that afforded me a lot of freedom in how I spent my time. During the four months that I was a CQL employee I was able to largely rewrite web3.py and Populus, along with most of the underlying tool chain. The problem was that I was alone. I was this little blockchain focused island amidst a sea of unrelated work and projects.
There are however a few perks related to working for a giant multi-national corporation. CQL paid for me to attend Devcon Two as well as handling the complex bureaucratic visa process. I left for the conference with the sole intention using it as an opportunity to further my goal of fostering blockchain based work withing Cognizant. Within the first few days all of that would change.
I had spent most of the previous year avoiding getting hired by any Ethereum based company. I wanted to work on the platform but I also wanted to make that move on my terms. I wanted to work on my ideas, or more specifically, I wasn’t keen on building someone else product. And really, I just wanted to work on open source. By the second day of the conference it had crystallized. There wasn’t likely to be a better opportunity to make my move into working on Ethereum full time than the one in front of me.
I spoke with a number of companies and people that week. I wanted to say yes to so many of them. Our community is full of amazing people doing amazing things. I was genuinely surprised with the company I went with.
I’ve watched ConsenSys for a long time. They are easily the largest company in the Ethereum ecosystem. There are a lot of really talented and smart people on their payroll. They’re behind many prominent Ethereum tools and applications. I’d be curious to hear about any project that isn’t using at least one of the following:
- Metamask
- Truffle
- TestRPC
- Infura
In my experience companies are rarely good. And often, the bigger the company, the bigger the un-goodness. They are rarely good to their employees because they have more power. They are rarely good to the environment because doing so cuts into their bottom line and we’ve decided as a society we’re fine with sweeping these costs under the rug. They are rarely good to society because they confuse what’s profitable with what’s best for people.
During one of the breaks at Devcon this year I was talking with Tim Coulter. He made what I believe was a completely off-hand remark asking why I don’t work for ConsenSys. This led me to ask myself that same question:
What if I worked for ConsenSys?
In all my watching, I could not recall a single instance where they’d behaved in the manner I expect from large companies. ConsenSys seemed to be dedicated to open source. They seemed to be doing good things for the Ethereum community. I already knew most of their developers in some way.
Things abruptly fell into place. Shortly after the conference I signed on as a full time salaried employee for ConsenSys.
Everything that I’ve created for the Ethereum ecosystem before then was done in the spare time I could carve out between my family and my actual full time job. I was never able to know if I’d have time to continue working on a feature next week, much less tomorrow. I was never able to make long term plans for my software because I never knew how much time I’d have available to me in the coming weeks or months. I was never able to commit to bigger and broader efforts because I didn’t know if my schedule would continue to permit my involvement.
Working for ConsenSys has changed all of this. It has given me the ability to look further than a few days or weeks. It allowed me to pursue creation of ERC190 and EthPM , both of which would likely not exist otherwise. But the really amazing part for me is that in these four months I haven’t been required to make a single compromise. I still set my own priorities. I still get to focus on advancing the open source Ethereum ecosystem.
So there it is. A rambling story of how I found myself in a career that I love and a somewhat tacit endorsement of ConsenSys. I think storytelling is an amazing medium for conveying ideas. The problem is that I’m likely a mediocre storyteller so I’ll try to bring it together here with a few closing thoughts.
First, only time will tell what kind of company ConsenSys turns out to be. I’m cautiously optimistic that it will remain that way.
Second, its impossible to know whether I’d still be here were it not for the happenstance of having that first month of the frontier network to explore and learn. But things are rarely just one thing. The path I’m on began with a certain degree of luck, but it also involved working my ass off for the last two years. You might get lucky and find a trail of breadcrumbs which lead you to the career you didn’t know you wanted. But there’s 100 other ways to get there and no matter how you get there it’s going to involve putting in the work.
And third (mostly because I like things that come in threes), I hope you will believe me when I tell you I’m still the same developer I was before I started working for ConsenSys. Now I’m just doing it full time.