Stories
Slash Boxes
Comments

News for nerds, stuff that matters

The Amazon Technology Platform

Posted by ScuttleMonkey on Wed May 17, 2006 04:24 AM
from the under-the-covers dept.
Don420 writes "Jim Gray has an interview with Amazon CTO Werner Vogels for ACM Queue. It is filled with a lot of details about the Amazon architecture that we have not seen before: 'If you hit the Amazon.com gateway page, the application calls more than 100 services to collect data and construct the page for you.' But also quite a strong statements about developing software at Amazon: 'Developers of our services can use any tools they see fit to build their services. [...] Whatever tools are necessary, we provide them, and then get the hell out of the way of the developers so that they can do their jobs. [...] Developers are like artists; they produce their best work if they have the freedom to do so, but they need good tools.'"
This discussion has been archived. No new comments can be posted.
Display Options Threshold:
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • 100 Services ? (Score:4, Insightful)

    by jonv (2423) on Wednesday May 17 2006, @04:45AM (#15349306)
    'If you hit the Amazon.com gateway page, the application calls more than 100 services to collect data and construct the page for you.'

    and this a good thing ?
  • Unlimited budget (Score:4, Funny)

    by DonCarlos (222830) on Wednesday May 17 2006, @04:45AM (#15349307)
    (http://wfmh.org.pl/carlos/)
    Having unlimited development budget is definitely THE good thing I sometimes miss myself ;)
  • by allanj (151784) on Wednesday May 17 2006, @04:47AM (#15349312)
    I wonder if the actual developers/coders see it that way themselves. Sadly, CxO's often have a warped view of how things work "on the floor".
  • Of course, Amazon can't be around for much longer at the rate they're cutting it down.
  • Thanks (Score:1, Interesting)

    by Anonymous Coward on Wednesday May 17 2006, @05:09AM (#15349374)
    "Developers are like artists" is exactly what these primadonnas needed to hear. No, developers are nothing like artists. Creating something that didn't exist before doesn't make you an artist. Builders create something new every day. Developers are more like inventors if you give them a free hand in what they develop, but most of the time developers are very much like builders: They create what you ask them to create.

    Or maybe I got you wrong and you meant that developers are like artists: Poor, starving, living for their work and only valued once they are no longer available.
    • Re:Thanks by Viol8 (Score:2) Wednesday May 17 2006, @06:28AM
      • Re:Thanks by CrackedButter (Score:2) Wednesday May 17 2006, @02:03PM
      • 1 reply beneath your current threshold.
    • Re:Thanks by indifferent children (Score:2) Wednesday May 17 2006, @06:52AM
    • Re:Thanks by ashtophoenix (Score:1) Wednesday May 17 2006, @07:51AM
    • Re:Thanks by eonlabs (Score:1) Wednesday May 17 2006, @09:18AM
    • Re:Thanks (Score:4, Insightful)

      by stlhawkeye (868951) on Wednesday May 17 2006, @10:42AM (#15351338)
      (http://www.themanpages.net/ | Last Journal: Tuesday September 06 2005, @03:45PM)
      Or maybe I got you wrong and you meant that developers are like artists: Poor, starving, living for their work and only valued once they are no longer available.

      Move away from the coasts. I make $75,000/year working 40 hour weeks. I'm not on-call, have flex hours, get 3 weeks of vacation, and unlimited sick time. Quit working for IT sweat shops. Move somewhere where family time is valued and it's impossible to hire people unless you are willing to give them that flexibility. I've been through four employers in the St. Louis area and been able to land jobs with a deal akin to this one at all four. Developers are "poor"? No. Elementary school teachers are "poor." Starting salary for a developer in a low-watt market is close to $40K without a degree. That's not "poor." That's not starving, and that's not living for their work, unless by "living for their work" you mean that you're expected to show up on time and do your job.

      [ Parent ]
      • Re:Thanks by AuMatar (Score:2) Wednesday May 17 2006, @06:17PM
        • Re:Thanks by stlhawkeye (Score:2) Thursday May 18 2006, @08:24AM
      • 1 reply beneath your current threshold.
    • Re:Thanks by achacha (Score:2) Wednesday May 17 2006, @03:15PM
  • But they need good tools (Score:4, Informative)

    by wysiwia (932559) on Wednesday May 17 2006, @05:13AM (#15349386)
    (http://wyoguide.sf.net/)
    Sure anybody need good tools to produces something exceptional. But what can you do if the needed tools aren't available? What can developers do if they aren't happy with their tools or their environment?

    For users the answer is easy, they simply switch to something different, but for developer it's not. You usually first have to get a lot of knowledge which needs time. But one does never get more time!

    So developers have to think in advance sometimes several years. This means constantly be on the edge of the available knowledge. Tools can certainly help but nothing prevents you from getting the knowledge in advance.

    O. Wyss
  • Artists? (Score:5, Funny)

    by should_be_linear (779431) on Wednesday May 17 2006, @06:12AM (#15349529)
    Well *Some* developers are like Artists, others are more like Naïve painters with unlimited budgets for colors and huge canvases.
    • Re:Artists? by Opportunist (Score:2) Wednesday May 17 2006, @06:21AM
  • Tools are all well and good... (Score:4, Interesting)

    by dtsazza (956120) on Wednesday May 17 2006, @06:23AM (#15349569)
    ...but at the end of the day it's the developer's talent and experience that tell most of the picture. It sounds like Amazon do let their developers decide (to a large extent) how their products are going to work.

    The transition from the monolithic Obidos to the current SOA makes me wonder how exactly that part of the system works. Though it's not (that I could see) explictly stated, it certainly seems that adding scalability was a long and painful process. Planning for future developments like this is something that developers tend to be much better at than managers - so I wonder whether the developers didn't think about including scalability hooks in their initial efforts, whether they decided (back in the early days) that it wasn't worth it, or whether they wanted to but were told not to bother.

    All said, I do applaud the public stance that Vogels is taking in his attitude. If more CxOs shared it, we'd likely have beeter-designed systems all over the shop. You hire the developer because (s)he's good at developing - so let them go to it!
  • Good Tools? (Score:1, Insightful)

    by Anonymous Coward on Wednesday May 17 2006, @06:23AM (#15349570)
    My father always said it was a poor craftsman who uses his tools as an excuse.
  • by digitaldc (879047) * on Wednesday May 17 2006, @06:38AM (#15349628)
    application calls more than 100 services to collect data and construct the page for you.

    No wonder it takes so long to load
  • i wish... (Score:1)

    by dead.phoenix.616 (948836) on Wednesday May 17 2006, @06:44AM (#15349649)
    and then get the hell out of the way of the developers so that they can do their jobs. [...] Developers are like artists; they produce their best work if they have the freedom to do so, but they need good tools


    gee, i wish my boss(es) was/were like that
    just so we didn't have to end up doing
    half-assed jobs with half-assed resources
    ending up in half-assed products...
    (and maybe half-assed revenue?)

    oh well...

    • oh the irony by BitterAndDrunk (Score:2) Wednesday May 17 2006, @01:53PM
      • Re:oh the irony by dead.phoenix.616 (Score:1) Wednesday May 17 2006, @09:43PM
  • My question is (Score:5, Interesting)

    by Aceticon (140883) on Wednesday May 17 2006, @06:54AM (#15349689)
    Developers of our services can use any tools they see fit to build their services.

    I wonder how they avoid the maintenance nightmare which is having multiple application components done using various obscure technologies/tools and the person that did it leaving the company and somebody else having to maintain/extend those application components?

    Do they standardize their build tools, require good documentation on the service implementations or just overwork the poor sods that have to do maintenance to death?
  • CTO speak (Score:2)

    by achacha (139424) on Wednesday May 17 2006, @07:05AM (#15349732)
    (http://www.achacha.org/)
    Wow their CTO is a lot more in touch with development than our CTO... :(
  • by suds (6610) on Wednesday May 17 2006, @07:57AM (#15349974)
    (http://www.opusnet.demon.co.uk/)
    'nuf said.
  • Recruiting interview? (Score:2, Interesting)

    by BigLinuxGuy (241110) on Wednesday May 17 2006, @10:25AM (#15351169)
    I'll preface my comments by stating that I regularly order through Amazon.com and have never had a customer service-related problem.

    This interview, while I'm sure sincere on the part of the CTO, comes across as a recruiting pitch. Obvious fallacies:

    "Developers themselves know best which tools make them most productive and which tools are right for the job."

    This sort of development mishmash depends on the developers never leaving (which most do after 2-3 years). Maintenance is, at best, nightmarish and leads to a patchy (with apologies to Apache) mess. FWIW, most developers seem to jump into coding right away with no thought for architecture or design.

    "Whatever tools are necessary, we provide them, and then get the hell out of the way of the developers so that they can do their jobs."

    Hmm, so the developers manage themselves. What a great job being a manager must be there. :-)

    "Developers are like artists; they produce their best work if they have the freedom to do so"

    In my experience, most developers are nothing like artists and more closely resemble petulant, undisciplined children. Often they ignore the most basic principles of good software development (like version control, automated build and test suites, documentation, etc.) because "those are boring".

    "I think part of the chaotic nature--the emerging nature--of Amazon's platform is that there are many tools available"

    Wow, CTO speak at its finest to explain the disorganized nature of the organization.

    "As a result of this principle, we have many support tools that are of a self-help nature."

    See my point above about documentation being boring.

    Comments I've heard from people who work at Amazon:

    1. Low pay - it's a great place for budding "artists" fresh out of school to build "experience" that has to be unlearned at a more organized shop.
         
    2. Dot-Com mentality - Lots of excuses for your desk being a door on two filing cabinets as well as the lack of organization.
         
    3. Turnover rate - as soon as people get experience, they leave for better paying jobs; Amazon is *always* hiring.
         
    4. The Programmer is God syndrome - that's right, they're not just misunderstood artists any more.


    Your mileage may vary.....
    • Re:Recruiting interview? (Score:4, Interesting)

      by AuMatar (183847) on Wednesday May 17 2006, @12:22PM (#15352167)
      Wow, troll much? Working at Amazon currently, I'll comment on a few of these things:

      1. Low pay - it's a great place for budding "artists" fresh out of school to build "experience" that has to be unlearned at a more organized shop.

      Not at all. I'm making 15% more here than I did at HP last year. I make more than devs with equal experience at MS. The pay is pretty good.

       
            2. Dot-Com mentality - Lots of excuses for your desk being a door on two filing cabinets as well as the lack of organization.


      THe door desk is aq culture thing. THere's a whole story behind it. Think of it like a tradition a sports team has. In the end, it works well- its not pretty, but its sturdy and does its job.


            3. Turnover rate - as soon as people get experience, they leave for better paying jobs; Amazon is *always* hiring.


      Amazon is also growing- we have more developers than the year before. Yeah, there's turnover. Welcome to the IT industry- its rare for anyone to work at 1 place for more than 3-4 years. A lot of it is people staying just long enough to vest their stock grant (thats right, our sign on bonus is a grant, not an option) and then leave for another bonus elsewhere. Moneywise its the smart thing to do at any company.

      [ Parent ]
    • Re:Recruiting interview? by copenja (Score:1) Wednesday May 17 2006, @02:19PM
      • 1 reply beneath your current threshold.
    • Re:Recruiting interview? by Alric (Score:2) Thursday May 18 2006, @11:00AM
    • Re:Recruiting interview? by soliptic (Score:2) Thursday May 18 2006, @11:27AM
  • by NovaX (37364) on Wednesday May 17 2006, @01:24PM (#15352714)
    What Amazon is describing is their SOA and their efforts to make it a generic, base platform for a large multitude of services. The idea of having a service grid, where services are easily developed, deployed, and work seemlessly together, has been gaining a lot of momentium in the last few years. A number of companies are posed to shift the playing field from an ASP model to a network of service.

    The article is impressive in hearing how Amazon successfully migrated from their legacy platform to a SOA. They may become a real contender in this emerging market, considering that they already have the user base and are quickly maturing a powerful platform. The other major contenders are Rearden Commerce and Salesforce.

    Rearden Commerce, the company I work for, has developed a very pure SOA. They are currently targetting enterprise customers in order to gain the critical mass and user adoption necessary to succeed, which can be very difficult for a startup working in the consumer market. Their goal is to provide a web-based personal assistent that you can use to book plane tickets, dinning, etc. and all coordinated with your peers and working with your calendar and notification preferences (email, SMS, voice). It looks as if Amazon is on a similar path, so it will be interesting to see what happens in the next few years.

    After the critical mass and the base platform are available the next big issue is getting 3rd party developers on the platform. That's something that everyone seems to be working on, which is why we're seeing so many AJAX and other toolkits emerging from companies like Yahoo, Google, and Zimbra. Imagine another company's product integrating just as neatly with Gmail as Google Calendar, yet staying very decoupled. That's part of the promise, and is the next big hurdle for the SOA leaders even though their platforms are still quite fresh and new.
  • by mr.bri (886912) on Wednesday May 17 2006, @01:32PM (#15352786)
    All of Amazon's technology is great, but it seems to be the one engine that does not work with Squid proxies in some cases. We use Astaro as our gateway/proxy appliance, and it uses Squid as its proxy, and Amazon (as well as Amazon-powered sites, such as Target, Toys R Us, Barnes & Noble, etc) does not work.

    We have worked with Astaro support, and they have narrowed down the problem and sent the information to Amazon, but there has been no response yet.

    In researching the issues, I have found posts all the way back to 1999 regarding incompatibilities with Squid and Amazon. Both ends have worked on the problem, but there has not been a 100% successful fix.

    The issue only seems to affect far less than 5% of squid users, and even then it's sometimes inconsistent. So, it's almost impossible to fix because it's so hard to demonstrate. We can repeat the problem consistently, but it is the first case Astaro has had, and their systems are pretty much identical across the board, so it might even be a hardware compatibility issue with specific NICs. Who knows.

    Problem description [squid-cache.org]
    Amazon employee post [squid-cache.org]

    If anybody has had problems in the past and was successful in resolving them, please reply!

    Thanks,
    Brian

  • artiste (Score:1)

    by chillicane (834120) on Wednesday May 17 2006, @10:00PM (#15355867)
    Developers are like artists; they produce their best work if they have the freedom to do so, but they need good tools.

    if only all IT managers knew this.
  • by consumer (9588) on Thursday May 18 2006, @12:16PM (#15358765)
    "Are self-describing XML documents flowing around inside your service-oriented architecture?"
  • Could it be that Ireland and Northern Ireland are different countries? Being on the same land mass has nothing to do with it.
    [ Parent ]
  • Netcraft confirms it (Score:3, Interesting)

    by mangu (126918) on Wednesday May 17 2006, @06:36AM (#15349621)
    Does it run Linux?


    Yes. [netcraft.com]

    [ Parent ]
  • Of course they shouldn't be telling you lies, but if you say, "Ship as soon as possible," then they will do this (and charge you for it). If you say, "Ship in one shipment," then they will hold everything until its all ready and only then will they send it. Generally, at least.
    [ Parent ]
  • creepiest. post. ever.
    [ Parent ]
  • Anecdotal, but... (Score:2)

    by mangu (126918) on Wednesday May 17 2006, @07:57AM (#15349971)
    Of course, it's not possible to draw conclusions from one or two isolated incidents, but my experience with Amazon's customer support couldn't be better. One time I got a book which was missing the CD. It seemed to be a manufacturing error, the envelope that's normally used to hold the CD in books that include one was not there. I sent them an email and they sent me another book by priority shipping and told me I didn't have to send back my defective book, to donate it to a library if I wished to.


    In other occasion, I ordered a book by priority shipping and more than a week later I hadn't received it. I sent them an email and they answered that there had been a robbery at an airport warehouse, they sent me another book by priority shipping and, since I hadn't received the first book in time, they charged me only the price for standard shipping. The difference was reinbursed by the credit card company, it was discounted from my next CC payment.


    they no longer sell electronics to Ireland, although they will send to N.I.


    I don't live there, but, AFAIK the United Kingdom of Great Britain and Northern Ireland is not the same country as Ireland, although, according to what I have seen quite often in the news in the last 35 years or so, there are people who are not satisfied with that. Amazon's policy varies from country to country, the legislation in Ireland must present some difficulties for shipping electronics there.

    [ Parent ]
  • Re:Much use of Haskell and SML. (Score:4, Interesting)

    by Fnord (1756) <joe@sadusk.com> on Wednesday May 17 2006, @12:03PM (#15352022)
    (http://slashdot.org/)
    I worked at amazon for two years. I never saw any use of Haskel, SML or any other functional language. 90% of all work at amazon is some combination of C++ and Perl, with a few groups trying to transition to Java.
    [ Parent ]
  • by AuMatar (183847) on Wednesday May 17 2006, @12:12PM (#15352084)
    I work at Amazon, and I haven't heard of anything in Haskell or ML. Mostly C++, Perl, and Java. A few internal tools in off languages like Ruby or Python. You'd certainly be allowed to write in Haskell or ML, but if it needed to be supported you'd be pushed to use a more common language- the odds the next dev they hired could maintain it are low. Now if it was a one off script or a tool for you own productivity, noone would care.
    [ Parent ]
  • 12 replies beneath your current threshold.