Microsoft or Google?
Undecided asks: "I will be graduating next April, and I have been fortunate enough to receive job offers from both Microsoft and Google. This has left me with a bit of a conundrum, however — I'm having real difficulty deciding which offer to accept. Putting aside compensation and other personal circumstances that will factor into my decision, what is the Slashdot community's take on this? Am I crazy not to go with Google? I am especially interested in the insight of others working in the computer science industry, in particular those who may have experienced what it's like to work at both companies."
Guess Cliff thinks Sony is the answer?
A professor of mine (who went away and came back to visit) said that if you work at Microsoft you'll have a life outside of work. If you work at Google, then work will be your life. At Google you'll end up being at work all the time, but you'll enjoy it, and you get really good free food. But at Microsoft you can at least go hiking or something on the weekends. They're both pretty demanding though, I take it.
That's what I've heard as far as corporate culture goes. As far as business practices go and innovation, that's common knowledge.
And what... no Apple?
Seatle or SF Areas? That should be a better question. It is the quaility of life, not the job.
It rains a lot in Seattle. Not steady rain, but dripping and drizzle. In the winter it gets light late and dark early and is cloudy and gloomy. A great place to be a mushroom.
Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
Google is still in its early days, and it has a reputation for innovation and intelligence (the same reputation that Microsoft had in the early 80s). If you like Google and stay for a long time, you might have a lot of room to move up the ladder. Microsoft is where IBM was in the 80s, but with cheaper tailors: they dominate the industry, but not the mind share, and it's a mature organization with less room for advancement.
There's a small company called SCO that you may be interested in. They used to make a Linux workalike called SCO OpenServer. It's almost the same as working at Microsoft, except without the gyms and free coffee.
...on what they each want you to do, and what you want to do. If you want to be the guy/girl who codes the next Excel interface (or more likely the one who chooses the next font for the Excel Help menu) go with Microsoft. If you want to develop applications that start with "g", go with Google.
Or, seriously, if you want/need a somewhat more traditional (all relative of course), go MSFT. If you want to be hip and work more flexibly, go GOOG. Google is obviously hot right now, but where exactly are they going? Will they survive and prosper through the Web 2.0 collapse? Microsoft, regardless of our personal opinions, has product, and cash. Lots of cash.
If I could offer a third alternative: skip them both for now and take a year off to walk across Tibet, or kayak down the Nile. You'll be working for the rest of your life. Do something fun with your youth.
Tell both companies the other has noted in an interest in you working there and ask the question that most job interviewees hate; but not "Why should you work for us?" but "Why should I work for you?" It's the question they will be least expecting and the answer may be somewhat telling.
Web 2.0 is almost certainly the future, and chances are very good that neither Google nor Microsoft will provide the first real web 2 killer app, but with google you'd be on the right side of the technological dividing line.
Go with google for a few years. And for some real fun, if you like working long hours, join a startup, cause thta's the only way to make big money, although your changes are only slightly better than winning the lottery.
Salut,
Jacques
I'd say Microsoft would be better for your CV, Google for your career. A subtle but important difference. In the early days you need a big safe 'corporate' name to gain credability, that would be MS. After that you need a firm like Google to actually allow you to grow and advance.
That said, If I was young, I'd go for Google but then I have zero career sense when it comes to myself.
I'm amazed that someone said MS got you the weekend off, I always got the impression they were hard workers and everyone there was burned out.
I want a list of atrocities done in your name - Recoil
If you have job offers from both Microsoft and Google, you're obviously orders of magnitude superior as a programmer to 99.99% of the dullards here. What the hell do you care what they think? Ask your professors if they can hook you up with some alumni who work at one company or the other and see what they say.
What I'm listening to now on Pandora...
You've already made up your mind by asking Slashdot in the first place. Obviously, you have some kind of wish to work with Google and not Microsoft. Similar questions include "should I get a job lobbying for the EFF or the RIAA?" and "should I invest in SCO or Red Hat?"
Did you ever notice that *nix doesn't even cover Linux?
Pick neither. If you can, try to find an interesting small company to work for. Having worked for both large and small companies I much prefer the atmosphere that you can only get in a more intimate work environment. It's only a matter of time before bureaucracy and HR catch up with Google, and I'm sure Microsoft is already there.
But be very careful figuring how much it will cost you to live in the Redmond vs. Bay areas. Also consider how soon you could get married and have kids. It gets WAY more expensive to house a family in the Bay area.
What exactly does each company want you to do for them if you were to work for them? Are either going to drone you? Are either going to put you into a position where you are going to be able to have some freedom and personal satisfaction in your work? Job satisfaction, as well as life satisfaction, will be important. Which job looks as if it's going to allow you to really experience what you need in life? Which is going to allow you to grow as a person outside of work? (If that is a desired result, that is) Also, and I know this is trivial, which is going to offer you better benefits right away?
I still have friends at MS and they are putting in 60+ hours because their managers insist on it. One guy hates it, but the pay is good (he makes 160K there) and the other guys stays because of what he does (not wild about the hour, but likes the job).
At Google, from what I have heard, the members put in the hours because it is fun, not because it is demanded of them. Biiiig difference.
I prefer the "u" in honour as it seems to be missing these days.
If you work in a tech position for a regular company, generally, you will put in 35-50 Hr/wk. They simply want a warm body in a chair and most companies view tech as a needed evil.
OTH, if you work for a tech company, then the hours are demanded by releases. In general, higher tech companies have more and faster releases (i.e. more work, longer hours). They need things done and tech is EVERYTHING.
I prefer the "u" in honour as it seems to be missing these days.
Yes, MS has and does operate that way. But back in the 80's, the company had the reputation as being innovative. Keep in mind that even today, many ppl on /. regard MS as innovative (they will be in another 5 years as their RD lab takes hold). I guess there a number of groups out there that will believe anything that they are fed and ignore the facts.
I prefer the "u" in honour as it seems to be missing these days.
This is decidedly off-topic, but I had to try three times before I managed to get past "Microsoft were a..." and "Google have constantly...", etc.
As it's not talk like a pirate day, I am left with two possible explanations:
I'm hoping you be a pirate, mainly because I be lookin fer some software on the cheap...err, I mean booty, ARRRRR!!!
"Murphy was an optimist" - O'Toole's commentary on Murphy's Law
You didnt say what your work area will be:
If you are a janitor, then pick the one with the least floor area.
If you are a security guard, Google is probably safer from disgruntled customers or workers going postal.
If you are a window cleaner, go with Google. I hear the chicks are hotter.
If you are a chef, go with Google, cos their food sounds pretty good.
If you are a maintenance tech, go with MSFT - rigid corporates are less likley to ride their scooters into the wall.
If you are a russian spy, work for MSFT. They are evil.
If you are an X-ray technician, WTF are you doing in IT....
Picasa? *cough*Writely*cough* Google Docs? YouTube?
Microsoft's actually not one big monolithic Borg culture as Slashdot likes to jest. I have made many friends with Microsoft people over the years, and have one friend who works for Google. So, take what I'm about to say somewhat at face value; it's all second-hand information anyway.
Google might be a good place to work if you just really feel that their products and services are going to be part of the next big wave of technology. They are doing a lot of cool stuff with network computing which I think people failed to predict a few years ago, and they have a culture of "doing the cool stuff". However, they're a small company. Despite their significant resources, they are still as susceptible to the mood of the market as any other relatively small company. Sure, they can liquidate resources if they get in a pinch due to the whims of the marketplace, but to do so would invariably affect their deliverable services and drive more people away. That's a hard place to be and could lead to a devolution of Google within a very short timeframe. They've been lucky so far, and I have to admit I do like their products a lot. However, I don't pay for them. At least not directly.
Microsoft is a big company with deep pockets and wide reserves that can weather a storm in the economy much better than Google. Sure, again they can liquidate resources in a crunch but it would take an economic disaster far worse than the Dot Com crash to kill a company like Microsoft. We as the Open Source / Apple / Tech crowd might want to believe Microsoft will be beaten by , but that's not really going to happen any time soon.
Google has a monoculture. Sure, they're a small company doing some cool stuff but they're still quite focused on a particular market. When you work for Google, you work for the company. Microsoft surprisingly has many different cultures depending on where in Microsoft you work. Microsoft is not one company, not really. It's a gestalt entity that shares the umbrella name of "Microsoft", but each division is run differently by different people with different management styles and personalities. This makes sense because each division does something very different. Even different areas of the country provide different cultures; I find the Microsoft guys I work with and know in St. Louis are VERY different from the Microsoft friends of mine in New York, at least in terms of business. They work differently, they think differently.
Bear in mind also that a job at Microsoft doesn't tie you to Redmond. You can pretty much work anywhere in the world. Last I checked, Google is in SF and that's about it. Bear that in mind; at Microsoft you can transfer your job to any of the other communities where they perform that function. Especially Microsoft Consulting Services... you can pretty much pick your location after you've been at MS for 6 months to a year and really proven yourself.
On the down side, I do know that Google tends to be an easy-going work environment, though with a veiled sense of pressure. Employees are subtly pressured to work far beyond 40 hours a week and thus it's not a good career in my opinion for someone with a family or someone intending to start a family. However, it *is* a fun place to work with lots of dynamic individuals who work hard but also play hard. Microsoft... well it depends where you work. There are fewer chances for advancement within Microsoft because people do tend to stay there. That also to my mind speaks to how good Microsoft actually are to work for; people tend to start there and stay there. However, the chances to "make it big with MS Stock" are over and have been for years. There may still be room for Google millionaires for real rock-star employees... MS... less so. However, the lack of advancement in my opinion is more than made up for by the flexibility of work location I mentioned previously.
I have to say that those friends of mine who work for Microsoft really enjoy their work. Many of them are as much of a geek as I am... running Linux and Vista on thei
And google is perfect?
.NET Framework 3, Office 2007's new and very innovative UI, Vista's new techs (all kinds of), etc.
They have a great advertizement program funding their search engine (along with the IPO money). Which search engine isn't as good as it used to be IMO. Too much results are from ebay/amazon/and linkfarms lately...
Other than those 2 things they've had for pretty much forever, what have they done that's overly impressive? gmail is OK... Google maps is pretty good. Video is so-so. But that's about it. Most of their other stuff was bought outright (like youtube, writely, etc). Some of it plain sucks (like their poor excuse for a spread), and besides their search (and perhaps gmail), the number of users is rather low... They just don't have many big successes.
In comparison, MS is no worse. Look at all the new exciting tech in the
Also, they're a younger company, give 'em a few years and they'll be very much alike to MS and older companies.
This will be modded down into oblivion for going against the slashdot groupthink (M$ bashing), but still, consider it!
I'm not sure that buying someone else's product and slapping your name on it is the sort of innovation the original poster had in mind...
Picasa? *cough*Writely*cough* Google Docs? YouTube?
Google.com? Gmail? Google maps? Google Earth? Google News? Google Pages? Google Talk?
bork bork bork!
Isn't the 20% growth rate we already have enough for you? You want MORE Californians coming up here and clogging up our freeways?
*ahem* Yes you are right the weather is terrible and all the people here are really rude and there are not any hot chicks! PLEASE STAY IN CALIFORNIA AND TEXAS!
Comment of the year
If you are one of those people who "lives to work", has no ambitions of settling down or starting a family, isn't risk-averse, and likes Arnold Schwarzenegger and the laid-back stoner-headed culture of California, then pick Google.
If you are one of those people who "works to live", has a family or plans to start one, prefers the stability of a company that focuses on revenue and profit over being an R&D lab, and likes being surrounded by polite but anal-retentive liberal environmentalist organic vegans, then pick Microsoft.
The myths you hear about "mandatory overtime" at Microsoft are bullshit. I work there as a developer, and I can tell you that the amount of overtime people put in varies depending upon what group they choose to work in and how efficient (or not) they are at getting their work done quickly. There are very few times of year when I have to put in more than the typical 40-hour work-week. Of course, some people I know who are working on Vista are putting in tons of late hours these days. So it varies a lot. I suppose the same is true at Google -- lots of variation, depending on what you choose to work on, your working efficiency, and the culture of the group you choose.
Moderator hint: a comment is neither "Flamebait" nor "Troll" if it is true.
I work in MS, and I can tell you that we don't work 60+ weeks where I am. It's the same way with other groups. But there are teams that are under crunch time, and I'm sure they might be putting in late hours (Vista anyone?). I'm guessing it's the same way with Google. Some groups are going to be under more pressure than others, or maybe it's the end of a milestone, etc.
If anything MS is trying to push for a more "friendly, softer side" of things regarding work-life balance, etc. We've had some major HR overhauls and revisions in the past few months, and I can say that it is making a difference. Also, the benefits package in general for MS is amazing. I don't know what Google offers, but the author should definately take that into account.
-- jchenx
As I've noted in my other posts, I work for MS and I'd have to disagree somewhat. It all depends on the groups you end up in. I definately know of people here that work on tiny, insignificant roles in the company. Most often, they seem to be in the "big divisions" (Windows and Office). But I know of many people (including those in my group), that work on a wide variety of "different and interesting" projects, that have a key impact on customers. Maybe not on MS overall, but if I had to choose between making MS happy, and making millions of customers happy, it's certainly the latter that I'm choosing.
The way MS works is that there are a ton of these little product units that almost act like a company within themselves. So you get a lot of the benefits of working in a small company (high visibility among your peers) along with the benefits of a large company (stability, etc). Granted, there are a lot of disadvantages as well (red-tape, paperwork, etc.).
It's probably moot for the author, since I would imagine it's the same setup at Google as well. It appears they have many little teams as well, all working on their own bit of Google-goodness. So my advice: check out which groups gave you an offer, and decide what you would rather work on. Personally, I only chose to work at MS because I got to work in the games industry. I definately would not have come here just to work on Office or Windows, despite them being the huge drivers of the company.
-- jchenx
I'm not really a developer. Sure I code occasionally, but that is not the core of my job. I do, however, work at a development house. We're a small company and we are really, really picky about who we hire. There are a handful of people who have come to us from MS. They all seem to like it here much more and have settled in for the long haul and occasionally grumble about how bad things were at MS by comparison. We don't have anyone from Google, but we've had several people leave here to go work for Google. They all seem pretty happy with it there.
Based solely on my impressions from these people, I'd much rather be at Google than MS. I'm sure, however, that your experience will depend upon what you'd be doing at each place and with whom. Good luck.
Dear Slashdot,
I am thinking of settling down, and I have been fortunate enough to receive offers of marriage from both a Brazilian supermodel and an Italian supermodel. This has left me with a bit of a conundrum, however - I'm having real difficulty deciding which offer to accept. Putting aside the life of incredible wealth and sexual satisfaction I am sure to receive either way, what is the Slashdot community's take on this? Am I crazy not to go with the Brazilian? I am especially interested in the insight of others who have married supermodels, in particular those who may have experienced what it's like to date models of both nationalities.
Undecided
I worked for IBM for about 5 years. What I found out was that a corporation is not homogenous. In IBM, you could be an egghead in one of the research labs working on cool cutting edge stuff, or you could be a suited consultant plugging software components together on a customer site, or you could be buried in an obscure backwater maintaining 30 year old mainframe code.
I bet MS is the same. I even bet Google's approaching that stage: I've already read one Slashdotter refuting the statement that Google engineers can move projects any time no questions asked. Of course, if you're in the right bit of Google, it might appear that way.
So, look at the job, not the company. And, I agree with everyone who's mentioned location too.
It is my understanding that Google employees are given around 25% of their time to research and develop new initiatives. If you are the type that enjoys taking on new tasks, coming up with new ideas, and are the inventor type of person, definitely go with Google. You really might find yourself making a difference if you came up with something new and impressive in this time, not to mention it is up to you to figure out what it is that you want to dedicate that time to. It is really hard to beat given free time for R&D and getting paid very well to do it. I do it in my spare time at home simply because I don't have time for it at work...
Development notes at http://devscribbles.blogspot.com
You can most definitely have a life outside work at Google. Yes, work can be demanding -- but that's what makes it fun (especially if you like to be challenged). But "work will be your life"? Not by a long shot. That's a complete myth.
Yeah, you definitely see people in the office late at night and on weekends. I've put in my fair share of long weeks, worked a couple weekends straight, etc. But that was because the work needed to be done, not because someone was behind me cracking the whip, or it would look bad if I wasn't there or whatever.
If you need to put in some extra time, then you can. If you want to work a normal week, then you can. It's all results-based, not time based. A lot of the younger folks, or those new to the area, tend to work longer hours. But us oldish guys with families and stuff? We work as much as we need to.
It was worse at my last job, a place that is known for being very laid-back. When I left after four years, I found I had only taken like 9 days vacation. I used to keep a cot and sleeping bag in my office. Not anymore. Last month, I took 17 days off to travel to various countries in Europe. I'm working all next week at a remote engineering office, just because I can (and I want to see my sister). They really encourage you to take your vacation time. I've traveled more in the past two years then the ten previous.
I have no idea what the work is like at MS, but at Google, engineers are expected to be able to budget their own time, and set their own goals. Yeah, your manager will go over your goals with you, and if you've bitten off too much you guys will probably talk about it, but they'll let you reach if you want to. They also let you set realistic expectations for yourself, sort of a "I know I can get all X done, but I'm also going to try and get Y and maybe Z finished, too" kind of thing. But the hours you put in come from those goals you've set. Things can come up that mean you have to put in extra time or whatever, but there's absolutely no slave driving there. You basically set your own hours since you're the one that has to get the work done.
As far as the perks and food and such, well, I've been there a while now, and I'm continuously amazed at how well they treat their engineers (and other employees). They just opened a juice and smoothy bar for crying out loud. Last Wednesday, we had a Hawaiian Luau for lunch, complete with a roasted pig in the ground and everything.
Actually, the thing that appeals to me most is that the structure there is flat enough that if you have a cool idea, it can bubble up to the senior mgmt level very quickly. You can also check out everyone else's work, and if you see something you like, you can contribute. I was searching for a library the other day and got off on a rabbit trail that had me a couple hours later checking in a few hundred line changelist to this guy's part-time project. I may end up helping on a more formal basis. Did I get in trouble for goofing off? Far from it. Pitching in like that is rewarded (and rewarding). I'll work a few extra hours for that kind of satisfaction.
-B
Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.
I work at Google's engineering office in NYC. We are hundreds strong and work on core projects, so there is some choice. Google has a philosophy that you should hire people where they want to work. So we have engineering operations in Boston, Phoenix, Pittsburgh, Seattle, Bangalore, Brazil, ... New York is the largest outside of Mountain View, though. I wouldn't give up living here for anything.
As far as being at work all the time at Google, it doesn't happen. You can't even schedule a meeting before 10:30 because people won't be in yet. Management is practically non-existent so nobody is clocking your time as long as you are getting your work done. We also tend to have work hour outings designed to make shy programmers interact. So we'll spend a day at Coney Island or go on a scavenger hunt.
It is definitely true that I spend more time with coworkers and sometimes technical topics come up. But that is because I like the people I work with, and technical topics are fun. We tend to discuss things like how much bandwidth you could get overnighting hard drives, and what sort of latency a data center on an aircraft carrier would have.
Google is a great place to work.
Umm.. I like where I work but I do NOT put in anymore work than what I am paid for. Putting in 4,5+ extra hours a week because it is "fun" does not put any more food on the table and keeps you away from family longer.
This assumes you have a family.
I'm not being facetious. Most people right out of college don't have one, and to be honest, going home to an empty house/apartment can be a lot less attractive than putting in a few more hours at the office, if it's fun and interesting work.
When I got out of college and was looking for a first job, I looked for something that was going to be fun, interesting, and expose me to a good community atmosphere (and give me a fat paycheck, that was a major concern at that point, too) -- if that meant I had to work 50 or 60 hours a week, fine. I didn't have any other responsibilities at the time; "work hard, play hard" sounded like a good time. (And it was, actually.)
There aren't a whole lot of times in most people's lives when you can just throw yourself into work, the time right after college and before you get a family is one of them. If you can find work that you find really intellectually simulating and personally fulfulling, by all means, go for it. And if you end up eating copious amounts of chinese food and sleeping under your desk, at least you'll have interesting stories to talk about later.
You have a lifetime of boring 40-hour-a-week-and-come-home-for-dinner to look forward to; at least do something cool while you have the opportunity and lack of responsibilities.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
I work at Microsoft and have been here for over 10 years as a developer.
There is more to consider than the company. The group that you work for and the city that you live in will have a larger impact on your life.
There has been some concern over hours. At Microsoft you work the hours necessary to get your job done. If you are efficient this should be 8 hour days. I typically work from 7:30 to 4:30 and many of my coworkers work from 9:30 to 6 or so. During crunch times the days get a little longer, but they shouldn't get much longer. Of course this will differ depending on the group. Some people like the environment here and will work longer hours, but that isn't required.
I'd think for a long time about the two areas, and perhaps visit both again if you have a chance. I've spent time in both and would much rather live in Seattle than the Bay Area, but others will disagree. The Seattle area has much cheaper housing. If you want to live in the city instead of suburbs it is more practical to live in Seattle and commute to Redmond than to live in San Francisco and commute to Silicon Valley. Both have excellent outdoor recreational activities (hiking, cycling, skiing, etc).
It sounds like you have two great options.
Don't forget about non-competitive agreements, some companies will assure that you never work for anybody else in a remotely related area. Dont forget about Microsoft taking some defectors to court for everything they ever paid them. I don't know about Googles contract, but I would take the least restrictive one. Also consider intellectual property issues. Some companies can take your rights to any code you produce, even if its in your own time, at home. Others simply can take code related to your job tasks. Some can do this for 6 months after you quit, and other can do it for 6 years after you quit. Take the least restrictive one, at least it leaves you with a practical exit stratagy if you don't like it there. Another reason to go with a small company. They usually dont make you sign away as much, and also dont have the full time lawyers/will to sue the crap out of you and often dont have as stringent of agreement in the first place.
Unless you are an ACE programmer,
with several outstanding programs
already in the wild, Open Source
or otherwise, I would go with
Microsoft.
Google is looking for talent and
they seem to have plenty. It would
be more difficult to stand out in
their environment. Microsoft has
some talented programmers, do not
get me wrong, BUT Microsoft SEEMS
not to really care about product
quality.
Just my 2 cents worth. No I do NOT
program, unless you consider IBM 360
assembler, programming. I do not.
So. You want to work at General Motors, or the NSA?
Seriously, that's the kind of decision you have. I would read archives of Robert Scoble's blog for some additional cutural and world-view. http://scobleizer.wordpress.com/
I work for one of those companies (MSFT, GOOG), and I spend many hours working in person, with the other.
If you want to know where GOOG will be in ten years, spend some time at Yahoo! If you want to know where MSFT will be, visit Redmond.
Both are a good deal, really. Both are arrogant - Microsoft is arrogant and basically insecure. Pick which environment will make you happy - screw what the geek-street talk is about the company.
"Speaking the Truth in times of universal deceit is a revolutionary act." -- George Orwell
In Portland we call the two seasons
1) Winter
and
2) Construction
I wish I had your problems :)
However, I will tell you this:
I have known three people who worked at Microsoft, some better than others, and only one liked his job, the others tended to use phrases like "slave drivers" and "sweat shop".
I have known only 2 people who worked at Google, and both loved their jobs.
The question you really have to ask, sicne you have such great opportunities, is this:
Given the reputation and actions of each company, which is the type of company you wish to work for?
I would take a hard look at who is going to be managing you at your new place of employment. I've been lucky to have good managers. If you don't know who your manager is going to be, I'd be more then a little worried. The first week of my first job after graduation, my new manager decides to leave the company. For 6 months I had no manager and no responsibility. I could feel the rust sinking in. Luckily I ended up doing the 3 year development project that I was initially hired to do.
People change jobs, what, 5 times on average? You're young, pick what you think will be the most fun. Chances are, 10 years from now, you'll be doing something different anyway.
I appreciate the question, and having lived in Brazil for two years, I can say without reservation that Brazilians are much nicer, friendlier, and more beautiful than Italian$. Italian$ just like to work overtime, have a nasty corporate culture, and are always trying to take over the world.
Wow, that's a lot of FUD there (go figure). I work at MS and I don't think I've ever had to "dodge flying chairs".
I haven't read the earlier books regarding MS culture, but I can tell you that if they were true, then times have certainly changed. Or maybe it's just an indication that the group that I work in has been "fortunate". I haven't worked 60-hour continuous work weeks, nor does anyone else here does, and nor do many of the people that I've talked to. Political battles? Sure, at times, but I wouldn't call it "never ending". (And MS is not the only place where I've worked with those type of battles, I reckon any larger-size company is going to have them)
Re-orgs, that may have some truth in. But again, it really depends on where you work. I've heard of many groups going through "re-orgs" and then it's gone, with all the folks being given opportunities to look elsewhere within the company. But I've gone through several re-orgs where it really does help the group (and no, people don't lose jobs), and people are satisfied with how it worked out. Again, I would have to imagine other larger companies go through similar phases as well.
Finally as for the "insane culture", that might be true
I have heard stories about the "old days" from my bosses, who have been in MS far longer than I have. In some ways, it's exciting because that's when MS was still new, the stock was soaring, etc. But there WERE lots of work-life balance problems, and many people really getting disgruntled by "the grind" (which explains why so many people left and retired, as the stock started settling). The MS nowadays is a lot "softer" (which ironically, some of the older folks dislike), which I vastly prefer.
-- jchenx
I don't know you. I don't know working at Google. (The rumors sound good, but I haven't checked them out.)
It's not that your crazy not to go with Google. You might not be a good fit.
It's that you ARE crazy to go with Microsoft.
I'm sorry, but I can't count of MS as either a good place to work OR a secure job. It's one of the few companies that has been busted by the feds for abusing their computer personnel. Now partially this is because they're the biggest, and partially it's because they used stocks to pay them. But mainly it's that they wanted to avoid paying benefits. They wanted to refuse to honor an agreement that they were still using to pull people in to work at MS. You might think a bit about what that implies about both the corporate culture and how you'll actually be treated if you accept that job. (I.e., not only can you not trust the salesman's promises, you can't even trust what was agreed to and signed for. They'll hold *you* to every implied letter on the agreement, and a few more, but don't expect them to honor the deal without a legal fight that you won't be able to afford.)
I think we've pushed this "anyone can grow up to be president" thing too far.
Before I get into the comment, let me preface this by saying I am sure I will be biased towards Microsoft because I work here although I like to think I do my best to keep an open mind.
:-)). I would expect the same at Google...I know people working there and have heard the same things about the employees there.
As many of the other posters have mentioned, you need to look at the teams that made offers to you from both Microsoft and Google. Despite Microsoft being a large company, being on a team that you enjoy is what makes all of the difference. I work in the Microsoft Office division and have never felt that I am not making a large difference to the product I am working on. I get to talk to customers once in a while, help with usability studies, decide on new features, and code the new product. The last point there is my main job so I spend most of my time coding and desiging...but I get to help in the process from start to finish and really feel that my opinions are heard and considered when directing the new product. That said, I have been in Office for 5 years and am considering a move to other teams in Microsoft. Microsoft is very understanding here and encourages moves internally so that an employee doesn't become bored and burnt out with their current product.
I find that I work with extremely smart people every day here and I get to work on programs which are used by millions of people (which is usually a good thing
The benefits are great at both companies...the employees are smart...the products are new and exciting to work on...the flex hours are great so I can have both a life and a career.
Basically, it is going to come down to the teams you have offers from. Look at them closely and consider which product seems more intersting and has a better feel for you and your passions. If you think the Google teams are better aligned with you, go there and have a great career. If you think the Microsoft teams are better for you, come here and have a great career.
OK, so I'm basically your age (finished a year ago from college). It would be a no-brainer to me to choose Google over Microsoft given the choice. I used to be a Student Ambassador to Microsoft and I became the dispenser of Microsoft gifts and paraphernalia at my college. It was good for my resume and helped me get a job, but the way I was treated (or not treated) by Microsoft totally turned me off to working there or even trying to apply for that matter. They outsourced all interaction between students and MSFT in the Student Ambassador program to a temp agency with considerable churn and lack of structure. And they never encouraged us to apply to Microsoft either or treated us like we were really all that important, but rather exhorted us not to sell our giveaway software on eBay. Instead we had to promote some Imagine Cup contest they ran which got more and more complex/convoluted (maybe run by the people who helped design Vista). And now, they dumped our Tech School entirely because apparently they'd rather hire from gen-ed and/or we're too small for them to care anyway. We also had an alumni from the school who was working at Microsoft give us a presentation for the senior class, and we got a real sense that he works very long hours and it's really not all that interesting, even if technically challenging. Yeah, working on the new Age of Empires or XBOX game is probably interesting within MS, but little else is...
.NET programming which is cool. Furthermore, I'm completely sacrilegious/traitorous from Microsoft's point of view as I've recently bought (and sold recently) AAPL stock, purchased a Macbook laptop, and have registered and plan to attend a Java SIG at Google campus in NYC. I've stopped attending the Microsoft .NET events because I'm sick of the "Rah-Rah" mentality and low level of techie goodness at the .NET user group events in NYC. Oh, and I recommend to people to short MSFT right about now...as I believe they are going the way of the dodo bird in the next 10-15 yrs (or perhaps much sooner).
I have a pretty good friend working at Google, and I queried her about how it was there. She wrote up a little piece on her blog on the differences between Google and Microsoft and why she chose Google. She loves it there working on Google Talk, and the 80/20 rule is strictly enforced. She has also experienced that it is not a grueling work schedule, but in fact a joy to do your work there and the 20% is a nice thing to look forward to in a given week as well.
I'm now at a financial company in NYC doing
This sig donated to Pater. Long live
If you are so uneducated, and have such low outlook on your own life that you need "help" to choose between Microsoft and Google, you should not be allowed near a computer.
Working for microsoft can not be excused (unless you are an illiterate cleaning person that does not even know s/he is working there).
Working for Google is suspect but might be compatible with a modicum of personal morality.
Working for anybody else is probably safer.
To be precise the job of Microsoft is to make our field totally uninteresting while providing the tools necessary to destroy what is left of democracy.
That's fine. Corporate salaries aren't a zero-sum game. And I'm happy you have a job you like that pays well. But I don't really do what I do for the money. As long as my family's needs are met (with a little extra for toys and savings), then I'm happy. I do my job because I find the work interesting and rewarding, and I find working with smart people to be enjoyable. Hence, I like where I work.
there is *always* work that "needs to be done". If that is going to be your excuse, why do you ever go home? When you are done with one project isn't there *always* something else you *could* be working on? "needs to be done" is a BAD excuse, because it does NOT *need* to be done. Unless you will actually save lives by working those extra four hours, then that work can, in fact, wait for tomorrow.
Oh, be serious. You're grossly overstating my point and undersimplifying the issue. While it's true that the bulk of my work load (and therefore my hours) is self-determined, the reality is that I also have coworkers. I work with them on one or more teams, and together we accomplish smaller tasks which contibute to the success of the overall project. And it's also true that sometimes dates are set which have to be met. I do what needs to be done in order to succeed. If I have to work over a weekend once in a while, put in a few long nights, then I do.
What I meant originally was that my managers don't pile on extra work or set unreasonable deadlines and expect 80 hour weeks. That isn't to say that I haven't worked an 80 hour week or two recently, because I have. I did so by choice, because I didn't want to risk letting my team down (and I was trying some new things). But that's the exception to the rule, by far. Normally, I'd say I put in between 40-50 hours. Sometimes I get an itch that needs scratching adn wind up doing some work from home at night or whatever. But I do that because I like what I do, not because I'm a wage slave struggling under the bootheel of The Man.
-B
Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.
I don't know about you, but I wouldn't be able to look at myself in the mirror knowing that I was contributing to the success of a company that has shown such poor ethical and legal practices as Microsoft. I've always wanted to make a difference, and no matter how convenient or lucrative the other options, I hope I'll always choose to make a good difference, and consider all the other factors as secondary.
I haven't seen any of that here, to be honest. I've been on the working end of such dictates before, and I'm pretty sensitive to such things nowadays. For sure the folks here are pretty well motivated and dedicated, but there's also a level of autonomy (at the individual engineer level) which would probably cause to the engineer being worked to death to call shenanigans. It would probably boil down to the engineer saying something like "That's not a reasonable request which doesn't fit into the task list you and I ahve already worked out and agreed on, so please refigure your dates and get back to me".
But the thing you need to realize is that more likely than not, the person saying "this is due in two weeks" has not only decided on that date after talking with all his coders, but he's also probably spending half his day coding as well.
I guess what I'm saying is that the process by which statements like "this is due in two weeks" are generated doesn't really exist here. There are deadlines and such, but they are derived less obtusely than that. Things tend to go from the individual coder on up.
I understand that at Google the motivation to work comes from you, not from the management (at least, not directly), but if that still translates into the same work hours, then maybe life at MS is better.
I can't say how it compares to MS, never having worked there. But you can work a normal 40 hour week (using the free shuttles that take you all over the bay area are good for keeping you on track, as it "forces" you to leave at 5:40 or whatever) or as many hours as you want. Also, a lot of people work from home (one manager always seems to send mail shortly after 10pm; probably she's done with dinner, kids are in bed, she's checking up on work email for the morning).
But I can say that the "life" here is pretty good. I'm sure MS is very nice, but I couldn't imagine better perks, or a better company to work for. The level of caring for and understanding of the employees continues to be very refreshing.
Basically, how many engineers at Google really do keep regular hours all the time ? I'd like to know the answer, just to satisfy my curiosity.
I'd say not keeping regular hours is by far the exception rather than the rule. We have some guys on weird schedules who come in at noon and work until 11pm or whatever. The hours are intentionally very flexible so they can do that. However, the parking lot starts emptying at about the usual time, and fills up in the morning like you'd expect at any other company. The notion of several thousand people putting in 18 hour days, day and day out, is a complete myth. Some people put in long hours, but it's neither required nor expected.
Though like I said earlier, if you come in on a weekend, you will see people coding. But they're also probably just getting some work done until their laundry is finished. :-)
-B
Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.
Here is my 2 cents. Area around Microsoft is becoming second to California in terms of cost of living. Prices for houses and condos continue to rise and with a starting entry-level salary of ~80K at MS not everyone can afford a decent place to live near Redmond campus. Many Microsoft employees bought 2-4 houses extra as an investment venture to cash out in the future. So, what you left with is an overpriced old junk you would not want to live in or will become a cash cow for your co-workers who started earlier then you and invested in real estate around Microsoft. Also, to tel lthe truth 80K would be a good salaray elsewhere but Seattle. Another thing to consider, work environment - there is no such thing at MS as a team. Everyone thinks he is a smart just because he works at MS and think things should be done his way - as a result no work is done and everythign is a mess. Don't get me wrong - technology is great at MS and there are like 4 companies like this in the whole world (MS, Oracle, IBM and maybe Google), but all things considered monetarily life is not sustainable in Redmond area. If you want life and family, consider either moving to a subsideary or work as a consultant for MS. Work for a development group will be tough - I can assure you that. Personally, I would want to live in neither Silicon Valley nor around Seattle.
With Microsoft, you clearly have a management who believes that producing a truly better product is too hard for them to either implement or effectively comprehend and therefore must resort to underhanded lock-in or other anticompetitive schemes. Either that, or they're simply too enamoured with creating such schemes. And in this regard Microsoft looks to be a really poor loser, though in their favor they're known to come out then winner often.
On the other hand, there's Google, whos management appears to be quite confident in their ability to innovate. They seem to encourage experimentation and freedom within the corporate culture. On the downside, it's really not very clear what their success rate is-- at this point it's too soon to tell. Working for Google might be riskier, but could be very rewarding.
Having worked in IT for about 25 years though, I would say that no matter who you choose to work for, there are a couple of things you should be aware of:
1. A company hires you because they need to fill a position, and am looking for a best-fit for that position. It is often the case that you may have far more abilities than the company you work for can readily utilize. While you might get really lucky and find an incredibly great fit, the situation may be more typical and you will find out that you have all kinds of abilities that they have either no particular use for or they may not be equipped to take effective advantage of them. While your job could be a life-long profession, and you may find a good company willing to hire you to do a job that you're well suited to do, keep in mind that you could spend much of your life underutilized because you have talents they don't know what to do with. That's not necessarily a bad thing, but idealists right of college may be picturing how they can do all this wonderful stuff for a company that they're excited about but end up appreciated for far less than that they feel they could contribute.
2. It's often the case that you get hired for one thing but by the time you walk in the door they need you for something else that has higher priority. That's not particularly a bad thing but I've had it happen to me at virtually every programming job I've ever had, so all I'm saying is don't be too surprised if that happens. In my case, every thing I ended up doing was just about as interesting so I had no problem with it.
3. Younger companies tend to be more unstructured-- often you have to invent procedures for doing things for the first time. Older companies often have their "way" of doing things that you may have to conform to. Depending on your own personality, you have to decide what makes you more comfortable-- and, that might change as you become more "seasoned".