4 ms·
Ask HN: Remote microservices consulting?
I'm looking at the viability of building a consulting business to specialize in micro services.
I'm a developer with 20 years experience and I live in Silicon Valley. I have experience with all the technologies I mention below.
Some thoughts on why micro services are:
- Micro services are small and can be built independently. So building new services should be easier than building or adding onto a monolith.
- There's a steep and nuanced learning curve involved in going from monolith to micro services and another in the transition from synchronous processing to asynchronous/reactive programming. So there are likely to be lots of mistakes to clean up and opportunities to offer help.
- Microservices make more sense for companies with larger teams working on a single product. Because the teams are larger, the company is also larger, so fewer mom and pop type projects and more opportunity to get recurring opportunities with a larger company.
- I can specialize in some of the key enabling technologies like Kafka, ELK/ElasticSearch (particularly for CQRS applications), Cassandra, Spring Boot, Docker and the whole AWS stack. This will allow me to focus my efforts and build strong core competencies.
- With a strong set of core competencies I will be better suited to blogging, writing, speaking in order to build my brand.
- Given how tricky microservices can be to get right, there could be strong opportunities for longer-term support contracts.
Do these sound like viable reasons to focus on microservices?
Do you think that this could be cultivated into a consulting practice starting with one person (me)?
What do you think I should consider that I haven't mentioned?
How would you structure the business and how would you bill?
Thank you so much.
- CyberFonic 8y agoI am intrigued by your question. Namely with 20 years experience and living in SV, why would you want to do "remote consulting" ? In my experience consultants with face-time are preferred and earn more. Microservices is just another architectural approach. As far as a consulting business goes it is much the same as any other consulting business - discover problems - deliver solutions - bill. Ok, tangentially attempting to answer your other questions: Are you sure you are offering consulting services and not "contracting" services? My reading of your questions suggests that you really mean the latter. You say "you can specialize ..." - does that mean that you currently don't have hit the deck running skills? In which case, what exactly are your 20+ year's skills and how could you leverage from those to microservices? In my mind this is very critical because if you just hang out your shingle as microservices consultant, then you are not differentiating yourself from some script kiddie who as read a couple of blogs. Before you go any further, read Steve Blank's "customer discovery processes" and apply the principle of getting out of the office and validating your business model. This is why using your current experiences and contacts and being in SV is so critical. As to how to bill: charge as much as possible. You want to avoid the bottom-feeders (both prospective clients as well as competing consultants). Personally I prefer to bill on the basis of specific deliverables instead of hourly rates. In a nutshell my process is: meet with client; understand their requirements; propose a specific deliverable and price; get agreement; do the work; deliver; collect money; repeat for next deliverable ...
- servemicro 8y agoAs to why to work remotely while living in the valley: I've found that when I come into a new job at the principal engineer level I'm usually met by the "smartest guy in the room" syndrome. There are usually 2-3 other principal engineers or architects that are usually very particular about how they like things. They tend to not be particularly open to new ideas and they generally don't like to be especially creative when it isn't their own pet project. So, I find it very difficult to become an "expert" on anything because anything "different" is seen as a threat to the people that were "the smartest guy in the room" before I joined. And so the jobs tend to degrade to just doing what I'm told, not looking to improve anything, deferring to everyone else's ideas and just not being creative at all. So I've found it pretty soul crushing work. As a consultant, my customers are looking for an expert. They WANT me to be the expert. I can write online or write a book on a topic and then market myself as an expert around that. So when I sit down to think through solutions to difficult problems, the other people around the table actually WANT me to have new ideas and the architects and principal engineers don't feel as threatened or challenged because they still get to keep their small slice of the universe exactly as they want it. So, to answer your question as to why I would want to work remotely. It's really about the people. Consulting vs. contracting: how do you see this distinction? I see that there is a difference. How would you describe it? Thanks for the tip on Steve Blank. I'll definitely check that out. And thanks for taking time to share your thoughts. I really appreciate it!