Google’s Developer Relations Vs. Microsoft’s Developer And Platform Evangelism

Category : Google, Microsoft, Opinion

It has been a year since I joined Google as a regional PM for Developer Relations. Looking back, it has been an amazing year – a rollercoaster of activities with startups, developers, and entrepreneurs worldwide.  Before Google I worked for a couple of years in  Microsoft’s Developer And Platform Evangelism -   It was a very interesting experience and I have learned a lot from these years at Microsoft.

It is time now to make the comparison very few people can make, speaking from personal experience - Google’s Developer Relations Vs. Microsoft’s Developer And Platform Evangelism:


Getting in – Interviews

Both Microsoft and Google have very strict vetting process and both rather miss a good candidate than let a bad one in. Both Microsoft and Google have between 6 and 12 interviews  assessing both technical and business abilities.

Still, it is harder to get into Google – In Google you are interviewed by your hiring manager, potential peers and all relevent interfaces. If one of them say “haaaa, I don’t know…” you will probably not getting the job, even if the hiring manager loves you. In Microsoft the hiring manager has much more influence, in my experience, to get someone in even if some of his interviews did not go perfectly. In Microsoft, I learned that one of my peers did not think I was the right person for the job (only after my first public session, he came by to say he though so before, and was proven wrong)  if this happened in Google, I wouldn’t have gotten the job.

Getting in – on-boarding

Both Microsoft and Google have a pretty solid on-boarding process.

Microsoft has tones of online mandatory courses you have to take in the first few weeks. Every course is interactive and at the end there is an online test. Most of the content is horribly boring – Policy, Products,  Sales, Internal systems. The tests at the end are super easy and you can take them as many times as you like… Not really challenging and rarely useful. The positive things I remember about my on-boarding at Microsoft was that I got flowers from the company a week before I joined, and that everything was ready and dandy when I came in.

Google on-boarding feels a little more like a startup. You get a lot of “Welcome to the team” emails, with funny and sometime internal jokes, that you only understand days after. You are called a “Nooglers” for the first few weeks – saying “Hi, I am Amir and I have a Noogler question” was very common for me in the first days. Most of the training is in classes and content varies –  some super interesting and super technical, and some less interesting like HR processes. No tests :) If you do not get it, you will soon find out when you start your job.



I had the pleasure to have great managers in Microsoft and in Google. Both were mentors and enablers in the best way possible. In Google there are things like non-managerial bonus – peers can give you bonuses and asses you as well. This helps employees to align strategies without the need of managers to intervene. Microsoft has peer evaluation but to a lesser extent.


I had amazing teams both in Microsoft and in Google. The team spirit in Microsoft seems more conservative, if you have a great idea some people will first think if it is aligned with their targets before helping you.  From my experience, it is much easier to experiment in Google than it was in Microsoft – If you have a crazy idea, just do it, and people will help you. In general it is more common to experiment in my role in Google than in Microsoft.

Work load

I work harder in Google. We are a smaller team both locally and globally – you want to achieve  more with your resources so you work harder. I am not asked to work harder, my manager tells me to work less, but I just feel more productive and want to do more.


Sales Vs. Eng

Microsoft’s Developer And Platform is under sales – Google’s Developer Relations is under engineering. This is the most important differentiator in my experience. In Google I do not need to sell anything, I am totally aligned with the developers and startups I work and meet everyday. I do not think “what do I need to sell to them”,I do not have a quota, I do not have a number hanging over my head. This makes me very happy.

Being in Eng also means I am in the same group as the developers that write the code. It is much easier to open bugs, go to eng meetings or event call some one if you are in the same org as he is. Google Developer Relations has much more interactions with the product team than Microsoft Evangelists.


Centralised Vs. Distributed

Microsoft is very centralised and Google is very distributive by comparison. In Microsoft most decisions are made in Redmond. There is a concept of field and corp –  If you are in the field you need to execute, if you in the corp you need to build, design, and strategize.  In Google I am able to build and run a global program from a distributed office (Not in the USA). It is super common in Google to go into any office, anywhere in the world and sit at a free desk and start to work. You feel at home anywhere in the world. Microsoft gives Corp people a company credit card – Google gives a company credit card to anyone in the company, no matter where they are.

Flying arrangement in Microsoft are every ordered and arranged by internal team – in google you need to buy your own ticket and book your own hotel – this takes time to adjust :)


Bottom line

Both companies are amazing – both have changed the world and the way we live. Working for both companies was an honor and a privilege. I am happy I have worked in Microsoft, and super happy I was asked to move to Google. At the end of the day, I feel more creative and empowered at Google. It is more challenging, exciting, and fun to work with startups, which are the bread and butter of Google, rather than enterprises which are the bread and butter of Microsoft.


All this comes from my personal experience and might not be true in general or for other people. This reflects my personal opinion and not any company or organisation. Everything I covered is public information that can be found in other resources on the web. No secrets, just my truth :)

Ad Supported Open Source Site/Blogs – Poor Revenue Model


Category : Open source, Opinion

If you are reading these lines, chances are you will not click on any of my ads.

In one of my previous articles, I have explored several revenue models for open source projects. I have promised to update on ad-supported revenue model as a way to make money from open source. In this article I report back on the relatively poor revenues you get out of this channel.

I have confirmed this fact with many open source bloggers and they all provide the same feedback – Software developers in general and open source developers even more so, are not interested in clicking on advertisement.

Spacebug, for example, is a dev-blog and has some open source projects hosted in it. has moderate popularity – it gets about 60k unique visits a year. The revenues I see from it is about 100-200$ a year. It covers the expenses but is nothing to write home about.

These are some possible reasons why visitors to dev-blogs do not click ads:

  • Developers are not here to shop – they are not interested in anything other than free content provided in the site.
  • Developers are so accustomed to ad-supported websites the advertisement are transparent to them.
  • Developers use ad-blockers and do not get the ads served in the first place
  • Advertises and ad networks fail to deliver interesting content that fits the developer needs

I base these reasons on my behavior as a developer who visit dev-sites and from feedbacks from other open source bloggers

The Role of the Software Architect as a Roadblock

Category : Architecture, Opinion

A software architect has an impotent role in software development- he explores the business needs, chooses the right technologies, designs and aids in implementation. Amongst other things an architect serves as a quality gate in the organization, preventing bad technology decisions and mitigating technological risks. But what happens when a quality gate is raised to high and risk mitigation is more impotent than the needs for change? Then the architect becomes a roadblock to any change and innovation, the architect then becomes a person you need to “pass” rather than “consult with”.

Continue Reading

6 Useful Things Google Search Provides That Are Not Search / Useful Google Search Tools

Category : Opinion, Tips

Lately it is kind of popular to trash Google. Very much like Microsoft, people love to complain about companies that take an important part of their daily life. Google is now an integral part of our life not only for search but for many other things. A good friend saw me convert foreign exchange on Google search and was very surprised you can do that. So here is a list of things I do in Google search which are not search related.

Looking up What’s the Time in Other Places Around the World

Living in a far away island in the pacific with friends in Europe and America, this tool is a great help.

Continue Reading

Forget About Software Configuration, Settings and Options – Choose the Right Defaults

Category : Best practices, Opinion, Software development

Common pitfall “I am not sure what to do…. let’s make it configurable”

You hear this all the time in software companies – Some business analysts, developer or product manager trying to solve a dilemma in software development by pushing the decision to the end user side. “Let’s make it configurable” seems like a get-out-of-jail free card if you can’t make you mind about colors, screen layout and many other hard choices we have to make many time when designing our software.

People think they want free choice, while in fact they want the right choice.

It is a common mistake to think that making some aspect of your application configurable is necessarily a good thing. Software users rarely go into configuration and edit the software options to fit their needs. Users expect the software to work “by default” / “out of the box” / “no hustle”. Continue Reading

Automatic online advertisement finally developed a twisted sense of humor.

Category : Microsoft, Open source, Opinion

In an interesting blog post about New Zealand education system moving from Microsoft to open source. I have noticed that the advertisement picked for the blog post, indicates that automatic-advertisement finally developed a sense of humor:

I hope I get the same kind of advertisement and then we can have a recursive blog post.

Software As A Service Takes The “Free Beer” Out of Open Source

Category : Open source, Opinion, SAAS, Software development

Free software means that computer users have the freedom to cooperate with whom they choose, and to control the software they use. To summarize this into a remark distinguishing libre (freedom) software from gratis (zero price) software, Richard Stallman said: “Free software is a matter of liberty, not price. To understand the concept, you should think of ‘free’ as in ‘free speech’, not as in ‘free beer’.1

The reality is quite different from this philosophy. Up until now open source software was, for most people, free beer rather than free speech. Well, the beer party is over, and cooperate companies have a new business model strategy called SAAS.
Continue Reading

Open source community should employ Microsoft’s business strategies

Category : Microsoft, Open source, Opinion

In one of the press conferences I attended 6 months ago, Steve Bulmer was asked “Why can’t Microsoft be cool like Apple?”

His reply was simple and to the point:

“I rather be popular than cool”

He further explained that Microsoft business strategy is to try to reach EVERYONE and not only the cool guys.

I suggest that we, as the open source community, employ the same logic:

“We rather be popular than the good and righteous”

Let me explain why we should be popular rather than right.

The baseline assumptions of this article

  1. Microsoft is popular – at the time this article is written, Microsoft has a large market share in many IT and retail industries – the company must be doing something right.
  2. Open source is less popular - at the time this article is written, most open source products do not have the market share their makers have wished for – so there is still something we need to do
  3. One of our targets as open source community is to become more popular – growing popularity and market share will drive open source prosperity in many aspects

The secrets of Microsoft’s popularity and market share

These are all well known and published secrets:

  1. Microsoft focuses on creating mass-market products – if it is not a 1 billion dollar in revenue you can forget about it.
  2. Microsoft excels at creating an echo system of partners and independent software vendors (ISV)- it is estimated that Microsoft eco system earns 9$ for every dollar Microsoft earns. Think about it!
  3. Microsoft spends millions of dollars on user experience – my Ubuntu might provide a great user experience but to fix things I sometimes need to go to command line, it’s been a very long while since I had to go to the command line to fix something in XP. Anyway, my point is that Microsoft puts great emphasis on how it looks.

Why isn’t open source as popular as it should be?

As always, it is mostly a matter of perception:

End users: ‘It is too hard’ ‘I am not a techi’ ‘There is no proper support’ ‘It does not come out of the box’

From a consumer perspective, most open source products are considered a niche and the realm of the super-technical (AKA geeks). I am not talking about popular products like Firefox, I am talking about the less popular majority of the open source offering. While most consumers find the mistaken notion of open source as free in the “free beer” perspective, they are still hesitant about support, user experience and simplicity. People think that some problems in open source products require command line, and let’s admit, VI is still not the preferred way of the masses to fix problems. Additionally, most consumers do not install anything by themselves, they like their software to come out of the box, preinstalled and ready to go.

Partners and ISVs: ‘Too complex’ ‘High risk’ ‘No commercial support or liability’ ‘Contagious license, I have to be open source as well’

From a partner perspective, open source sometimes seems as a risk to work with. Some commercial independent software vendors are afraid of lack of support and accountability. Simple, UI-driven integration between open source products, is still something rare, and human documentation is sometimes lacking (not talking about geek forums). Additionally, some cooperate lawyers are more afraid of open source licenses than the bubonic plague. One should not under estimate this last point, lawyers stop any development and partnering program in a blink of an eye, no matter how affordable and profitable it might be, it is their job to do so.

The first steps towards growing open source market share.

  1. Use the 80/20 – Pareto law
  2. Create mass market products – 20% of the applications drive 80% of the adoption. Firefox is an example of a great adoption driver.

  3. Focus simplicity – KISS lawKeep the project easy to use – aim for the lowest common denominator and work up from there.Always ask yourself – if I wasn’t the subject matter expert, would I find it easy and simple?

    Always ask yourself – can I achieve this functionality in a simpler, clearer way?

  4. Focus on UXUser experience is under estimated by most developers but please believe me – user experience is THE KEY for the success of 90% of any software project
  5. Don’t use GPLUse a commercial friendly open source license like Apache, MIT or MPL. Read the next section to learn why you should do that.

Why I think GPL is a poison pill for open source market share.

I was working in a big Telco company at the time when I got this kind of email -”All development over open source products or libraries should be stopped. A list of all open source licenses should be sent to the company’s law firm”

GPL is considered a dangerous license. It does not matter at all if that is true or not (I think it is not dangerous)- it is a matter of perception and not truth. Changing perception is extremely hard. Public perception sends people to jail, and makes stock markets fall. Even Microsoft found it hard to change perception regarding Vista.

GPL is considered contagious sticky open source license, it is also considered dangerous because people think it will make their software GPL without their consent, but worst than that, it is considered hard to understand and untested in court. If I was a lawyer, I would consider it a risk and lawyers, even more than most people, try to avoid risks as much as they can.

Some might say that GPL has done the open source community a lot of good, that it is the right way to secure the openness of the code, but look at our basic assumptions – right is OUT, market share is IN.

We as an open source community should drive software released under MPL, Apache, and any license which is considered safe and simple, and hope that the GPL perception slowly fade away.

Will Microsoft be hurt from this new approach?

No, it will thrive. Microsoft, like all super-big companies, is driven by revenues and market growth. If the open source will be successful and drive the market to grow, it will also grow Microsoft’s market. In simple terms if the market grows as a result of these recommendations, and it will, everybody will benefit from this- Google, IBM, Microsoft and all the rest of the big and small software and hardware vendors will cheer the open source community.

There is hope at the end of the tunnel.

We have made great progress; some open source products are now very popular both in the server side and the client side. If we employ a little more business savvy strategies and generate strong partners and echo system we will grow the entire software market. We will not only drive the open source business, but also benefit others and even help fight recession.

One big happy family, Right?

How much should a web site really cost?


Category : Open source, Opinion, Reviews, Software development, web hosting

Lately I have been asked by many people how much should they pay for a personal or small business website. It seems that these are good times to get some extra cash from a web initiative.

The problem is that, for most people, building and hosting a website is somewhat of a mystery. And when people treat something as a mystery they tend to over complicate it and over pay for it. Some people I talked to spent 20-100$ on simple basic hosting alone! That is, in most cases, more than what they need to pay.
Continue Reading

10 ways to spot a good software consultant

Category : Opinion, Software development, Tips

How do you spot a good software consultant? A good software consultant could be the key for your business success and bad consultants could be very damaging and counterproductive. Here are 10 cummulative ways to spot a good software consultant (can also be read as – 10 tips for the good software consultant) Continue Reading