Update -- we just announced our $15mm series A from Google Ventures and Khosla:
http://techcrunch.com/2011/12/01/rumble-to-build-and-publish...
http://venturebeat.com/2011/12/01/former-ceo-of-bioware-and-...
HN user
Mike Babineau (@mikebabineau)
http://mikebabineau.com
Update -- we just announced our $15mm series A from Google Ventures and Khosla:
http://techcrunch.com/2011/12/01/rumble-to-build-and-publish...
http://venturebeat.com/2011/12/01/former-ceo-of-bioware-and-...
Rumble - SF Bay Area (Redwood Shores)
Engineers, artists, designers, more - http://www.rumblegames.com/careers/
Rumble was founded in the summer of 2011 by an all-star team of game industry veterans from Zynga, Activision, BioWare, Blizzard, Playdom, Electronic Arts, Turbine, FooMojo and RockYou, and backed by top investors. Check out our team: http://www.rumblegames.com/team/
We are building both high-quality titles and a publishing platform for independent developers. By combining the best of AAA game design with free-to-play accessibility, we want to change the way people play games.
Drop me a line: nethergoat@gmail.com
Redwood Shores, CA (SF Bay Area) - Engineers and more
EA2D is hiring! We're a new, autonomous studio within EA building cross-platform social games for gamers. We've just launched our first game, Dragon Age Legends:
http://apps.facebook.com/dragonagelegends/
We need help building:
* New features for Dragon Age Legends (big ones: real-time, mobile, etc.)
* New games for big-name IP (we have access to the full EA library)
* An epic social gaming platform (for both internal and external teams)
We're small (30 people) and scrappy. And we're growing fast: 0-200 servers in the past 6 months. Tech stack is primarily AS3/Java backed by MongoDB, but we also use Python, JavaScript, and Ruby. We have a highly automated infrastructure running on AWS (EC2 w/ELBs and ASGs, EMR, SQS, etc., plus more than a few super-secret/unreleased Amazon features). Buzzword potpourri includes Chef, node.js, Google App Engine, Hive, Graphite, Tomcat, GitHub, Pingdom, Loggly, PagerDuty, and continuous deployment. <3 DevOps.
We need platform, game, systems, and mobile engineers. We need data people and a Director of Technology. We need producers, marketing, and designers. Some of our job listings are posted here: http://www.ea2d.com/jobs/, but we have positions we haven't even finished writing descriptions for.
If you're an A player, drop me a line: mikeb@ea2d.com
It does what I need for now, but I certainly wouldn't turn down a pull request! I'm happy to answer questions or help if someone wants to contribute.
I wrote a Python lib for this: https://github.com/EA2D/pingdom-python
It just supports checks for now, but the framework is there for other resources to be quickly added.
Basically, you just need to pass a Chef bootstrap script in through the instance's user-data.
Knife, a Chef management and interaction tool, provides several bootstrap scripts you could use as a starting point: https://github.com/opscode/chef/tree/master/chef/lib/chef/kn...
Let's use the Ubuntu 10.04 gem bootstrap script as an example (https://github.com/opscode/chef/blob/master/chef/lib/chef/kn...). The basic steps to use this with Chef would be:
(Note that this assumes you have a Chef server or are using the Opscode Platform. There's also a server-less option called "chef-solo" that you can use)
1. Create an appropriate first-boot.json to be used by the node(s). This will probably just be a "run_list" with entries like "role[app_server]" (function) and "role[production]" (environment).
2. Replace line 42 of the bootstrap script with your first-boot.json. Since this bootstrap script is actually a template, make sure to replace all other .erb stuff ("<%= %>") as appropriate.
3. JSON-encode the bootstrap script (handy tool: http://artur.ejsmont.org/blog/content/ultimate-web-encoder-d...)
4. Build your CF template, placing the JSON-encoded script in the "user data" section of your instance/auto-scaling group(s).
5. Instantiate your CF stack
If you'd like to use Chef for the entire lifecycle of your instances, just include a Chef recipe for running chef-client via cron every, say, 5 minutes. This allows changes to be propagated automatically in a pull style.
Done right, the end result is a complete, Chef-managed environment provisioned from bare metal using just one command.
Designing for fault tolerance and scaling out instead of individual node durability and scaling up is, in most cases, a sounder approach. Since the vast majority of applications map well to this case, it makes sense for Amazon to focus on features that assume/assist scale-out.
It's easier to design for scale-out than one might think; a great resource to get started is http://highscalability.com.
Regarding EBS, I haven't seen the hangup issue you've described. Any data?
As for low inter-node latencies, Amazon has an offering that specifically addresses that need: http://aws.amazon.com/ec2/hpc-applications/
Overall, I think Amazon is making a lot of inroads in areas with specific hardware demands. They just launched GPU compute options, and I expect we'll even see SSDs soon.
Nope, CloudFormation is for infrastructure provisioning. Configuration management is still valuable post-boot.
I've been using CloudFormation in conjunction with Chef - they're complementary tools, really.
Yup, just one building over
EA2D - Redwood Shores, CA (SF Bay Area)
We're a small, autonomous studio within EA building social games for gamers. Our first monetized title, Dragon Age Legends, is about to enter closed beta and has been generating a lot of buzz (http://pc.ign.com/articles/114/1146553p1.html).
Our Platform team is looking for mid to (very) senior engineers. You would be responsible for building the platform on which all EA2D games will run, from the pages that serve the HTML to the suite of game servers supporting them. Analytics, social network integration, shared services (REST), scaling, real-time stateful and stateless game servers -- this would all be your domain.
Our stack is primarily Java with MongoDB on the backend, but we're becoming increasingly polyglot (Python, Ruby) in the middle tier. We're hosted on EC2 (w/auto-scaling and on-demand environments) and practice continuous deployment. A sampling of the tech we use: Chef, git (GitHub), Hudson (now Jenkins?), ant, ivy, SQS, S3, EMR, Loggly, PagerDuty, Mixpanel, Kontagent, NginX, Tomcat, Hive, and Google App Engine. We contribute code back to the open source projects we use, and we've even started open sourcing our own (https://github.com/EA2D).
The Platform team is small and young -we're still building out the initial implementations of many services- so you would have a tremendous impact on our architecture and direction.
We're a tight-knit team with lots of whiteboards, so you'd need to be on-site. On the plus side, EA's campus is fantastic - we have a stellar gym, cafeteria, theater, shuttle service to Caltrain, soccer field, volleyball and basketball courts, tournament-quality foosball tables, and much more.
Drop me a line if you're interested, mikeb@ea2d.com
We've already hired two people from previous HN "Who's Hiring?" threads, so you'd be in good company!
Note that it's not 1000 servers every week, it's up to 1000 servers in a given week. This was likely done to support the launch of a new game, and may factor in server turnover (they're on EC2).
That being said, launching 1000 nodes for non-batch jobs is still pretty remarkable.
I definitely wouldn't consider EA2D a startup, but fortunately the OP left it open ("startup/company").
That being said, I do think we (EA2D) have a lot in common with later-stage startups. Three big factors are our autonomy (near-complete), self-sufficiency (product, dev, marketing, ops, etc. is internal to our studio) and size (just 27 people across all disciplines). I bet our stack more closely resembles that of a startup than that of an enterprise.
This is precisely the approach they take. Section 3.4 ("The Model") begins, "The heart of the model is to treat incoming events as a Poisson process..."
Business: Social games for gamers (http://www.ea2d.com)
Languages: Java backend, AS3 frontend, Python + Ruby misc
Note that we're very new (and hiring!), so much of this is still being built out.
Software lifecycle: git for SCM (GitHub as central repo); ant for builds; ivy for dependency management; Bamboo for build automation; Crucible for code review; JIRA for issue tracking; Greenhopper for sprint planning; Vagrant for containerized development environments
Systems infrastructure: AWS (EC2 w/ELB+ASG and S3 for now, more services to come); nginx-fronted Tomcat for JVM; Cassandra for persistent DB; chef for configuration management (currently chef-solo, but evaluating Opscode Platform); PoolParty+Fabric for one-click deploy server fleets; Nagios + Pingdom for monitoring; Mixpanel + Kontagent for analytics; Dynect (likely) for DNS, possibly for GSLB; Akamai (likely) for CDN, possibly for GSLB
Misc: PagerDuty for on-call stuff; Google Apps for email, shared docs, etc; Confluence for wiki; OpenFire (Jabber) for chat
Java/Flash/Automation Engineers (and more) - Redwood City (SF Bay Area), CA, USA
EA2D (http://ea2d.com)
We're a new division of EA focused on bringing big-name titles to the browser. Think Halo on Facebook, but with EA titles. We work in small, cross-functional teams, so each engineer has a huge impact on game and systems design. We're autonomous of EA, so we can use the tools we want without all the red tape (GitHub, AWS, choice of Mac/Linux/Windows, etc.), and the stack that fits our model best (Flash+Java+Cassandra+EC2 on Facebook to start). And we're a new division, so you can help define our studio culture and processes.
Of course, being part of a large company has its advantages: nice hardware, excellent comp., onsite gym+soccer+basketball+volleyball, great food, free games, and more.
For the full listing of jobs, see http://www.ea2d.com/jobs/
Bonus points for gamers. Double points for mad foosball skills.
Contact me directly: mikeb@ea2d.com
Redwood Shores, CA / San Francisco, CA
(relocation available)
EA2D is a new studio of EA created to bring big-title games to the web. Our first game is still months from launch, so much of the work is greenfield projects. We have ~25 people now, and are hiring aggressively.
We're an autonomous group, so we have free reign over our tools and processes. This means we can go nuts with EC2, GitHub, Google Apps, continuous deployment, whatever we want -- all the while enjoying big-company perks like an on-site gym, food, Caltrain shuttle, and, of course, free games.
We're looking for extremely sharp engineers (Java, Flash, test, and operations), artists, marketing, and more. Don't worry too much about the exact job descriptions - if you're a badass developer, we'll find a place for you.
Here's the full list: http://www.ea2d.com/jobs/
Contact me directly, mikeb@ea2d.com
Much of the problem is a result of the publishing model - deadlines are inherently more stressful when they're inflexible and you're expected to deliver a 100% finalized product.
My studio (EA2D, a new division of EA) is developing web-based games. We get to have all the fun of building badass games without the stress of delivering a hard-media product. In response to the post title: yes, for us, it is a very happy place.
Incidentally, we're aggressively hiring the best and brightest: http://www.ea2d.com/jobs/
Contact me directly: mikeb@ea2d.com
I wish I had the same foresight you did - my one regret about signing up for HN is not using my real name as my username.
It would be great if pg added the ability to change one's username, but given the HN community's usual sentiment on feature requests (a sentiment I share), I'm not holding my breath.
Automating AMI creation across all four Amazon regions so it can be part of continuous integration. Goal is to integrate continuous deployment with EC2 auto scaling groups.
Good start - I wasn't aware of the Litmus environment. The Animoto example is great, I love telling that story to people just starting to look into cloud computing.
To add to the large-environment roll call, here are the persistent server counts of some 100% cloud-hosted companies:
- Bizo: 100+ instances (I work here)
- Reddit: 100(?) instances ("256 Virtual CPUs" http://us.pycon.org/2010/conference/schedule/event/148/) - HNer jedberg runs this
- ShareThis: 250 instances (I worked here)
Longest-running instance I've had is at two years and still going strong.
Great, drop a line to greg@bizo.com - he can get you started and answer any questions you have
(Disclaimer: I work for Bizo)
Bizo allows you to target on specific business demographics (Company Size, Job Function, etc.), and to do so cheaply (starts at $5/day). One advantage Bizo has over Facebook, StumbleUpon, etc. is that the ads are shown across many websites instead of just one.
Unfortunately, "professional coach" is not one of Bizo's targetable segments, so other offerings may work better for CoachFire. Your other sites, however, may be a better fit:
http://www.bizo.com/marketer/selfserve
LinkedIn has a similar offering (https://www.linkedin.com/directads/) that allows you to target people in the "Professional Training and Coaching" industry, but, similar to the other sites you mentioned, ads will only be shown to users browsing LinkedIn.
Are all 50k messages still in your inbox, or have you archived most of them?
At Bizo (http://dev.bizo.com), we manage scheduled tasks via Hudson.
It works great for us. It's centralized, has a web interface, and is already familiar to everyone on the team (we already used Hudson for CI). It has a ton of plugins, so notifications, single sign-on, and a host of other desired features were no problem to bolt on.
Here's a quick post from a few months back on why we chose Hudson: http://dev.bizo.com/2009/11/using-hudson-to-manage-crons.htm...
When the news broke, our traffic doubled almost instantly.
Fortunately, our auto-scaling groups just fired up a bunch of new servers to compensate and our response time never took a hit. Chalk one up for EC2.
Good question. Really, it depends on the TTL... but that's not very helpful.
I checked the stats for one of our embedded apps, and I'm seeing a ratio of ~11 pageviews to 1 DNS query. That's with a 7.5 minute TTL. Clearly, your mileage may vary.
I'd be interested to know the ratio for a destination site with a longer TTL.
There is physical separation between availability zones, though I don't think it's been made clear what that separation entails on a brick-and-mortar level. Here's Amazon's description: "Availability Zones are distinct locations within a Region that are engineered to be isolated from failures in other Availability Zones and provide inexpensive, low latency network connectivity to other Availability Zones in the same Region."
I've always envisioned AZs in a given region as separate facilities on the same fiber loop.
Historically, we know that power and network outages have generally been isolated to a single AZ, supporting their claim of a high degree of isolation.
Here's the relevant page in the EC2 docs: http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/in...
In the interest of scratching my own itch, I've written an app that automatically graphs Amazon CloudWatch metrics. I'm making it free for all to use. EC2 customers with Elastic Load Balancers and Auto Scaling Groups should find it especially handy.
It's built in Django on Google App Engine (with the google-app-engine-django helper) and uses Boto to talk to AWS.
This is my first webapp, so I'm sure there's a lot I can improve upon. I'd love to hear any feedback you have.
It's a stylistic choice, so opinions vary, but the simplest guide I've found is to simply check the intended pronunciation. If you would pronounce the 's as its own syllable, include it (e.g., "Chris's"); it not, don't (e.g., "Mephistopheles'").
On a related note, one of the authors of Selenium IDE founded a startup called BrowserMob (http://browsermob.com/) that uses Selenium recordings for load testing and monitoring.
Great guys there, and a fantastic service. I've been a customer for over a year - it's one of the few companies I'm impressed with enough to evangelize.