
Ask HN: Remote microservices consulting? - servemicro
I&#x27;m looking at the viability of building a consulting business to specialize in micro services.<p>I&#x27;m a developer with 20 years experience and I live in Silicon Valley. I have experience with all the technologies I mention below.<p>Some thoughts on why micro services are:<p>- Micro services are small and can be built independently. So building new services should be easier than building or adding onto a monolith.<p>- There&#x27;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&#x2F;reactive programming. So there are likely to be lots of mistakes to clean up and opportunities to offer help.<p>- 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.<p>- I can specialize in some of the key enabling technologies like Kafka, ELK&#x2F;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.<p>- With a strong set of core competencies I will be better suited to blogging, writing, speaking in order to build my brand.<p>- Given how tricky microservices can be to get right, there could be strong opportunities for longer-term support contracts.<p>Do these sound like viable reasons to focus on microservices?<p>Do you think that this could be cultivated into a consulting practice starting with one person (me)?<p>What do you think I should consider that I haven&#x27;t mentioned?<p>How would you structure the business and how would you bill?<p>Thank you so much.
======
CyberFonic
I 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
As 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!

