.oooooo.     ooooo   ooooo     ooooooooooooo 
   d8P'  `Y8b    `888'   `888'     8'   888   `8 
  888             888     888           888      
  888             888     888           888      
  888     ooooo   888     888           888      
  `88.    .88'    888     888     o     888      
   `Y8bood8P'    o888o   o888ooood8    o888o     
___ ____ ____ _  _ _  _ ____ _    ____ ____ _ ____ 
 |  |___ |    |__| |\ | |  | |    |  | | __ | |___ 
 |  |___ |___ |  | | \| |__| |___ |__| |__] | |___ 
                                                    
        
Friday Fun with Gilt Games

The Gilt Public API is a great tool for developing new ways for people to shop quickly, efficiently, or on new platforms. But developers using the API are also finding unexpected things to do with Gilt data— they’re using it to make games.

So in the spirit of Friday, why not spend a few minutes playing with a couple of games that have been built on top of the Public API?

Gilt Memory was built by Karl Norling, a developer here at Gilt. See how quickly you can find the matching pairs of products, then challenge your friends to beat your score!

The Price is Right on Gilt was built overnight at the NYC Powered by MongoDB Hackathon last weekend. This live multiplayer game lets you and up to 3 other friends play a price-guessing game to see who knows Gilt’s products the best. Developer Yufei Liu built the project using Node.js and MongoDB.

Happy Friday, everyone!

The 5th Floor

Gilt Tech have been enjoying their new space on the 5th floor of 2 Park Avenue, NYC.

Gilt Tech @ NYC Powered By MongoDB Hackathon

What’s better than spending 24 hours in Manhattan hacking on sweet projects using MongoDB and the Gilt API? Doing it while supporting HackNY, a New York City organization that promotes innovation and entrepreneurship among the city’s up-and-coming students and hackers. And that’s exactly what you can do next weekend, April 27-28, at 10gen’s MongoDB Hackathon. A lot of great people, and great companies, are going to be there, and we’re excited to see you come down and make the next cool project. On Saturday night an esteemed panel of judges will choose winning projects and award all manner of prizes, including iPads, Xbox 360s, and more.

We’ll be at the event to share how to get started with the Public API and answer any questions you may have, give you ideas on what you could build, and maybe give you a sneak peek into what we’re working on for the future of the API, so come find us!

For questions about the event, you can send a tweet to @MongoDB. For questions about the API, get in touch @GiltTech or send an email to api@gilt.com!

The PMO: Right Work, Right Time, Right People

You might be surprised to learn that Gilt Tech has a Program Management Organization (aka “The PMO”).

Why do I think you might be surprised?  Well, the role of project management in traditional organizations has typically been one associated with paperwork and process (We need to talk about your TPS reports…).  It has also been associated with hindering rapid development and slowing things down.  These negative connotations are behind the reasons why many people struggle with the idea of having a PMO or a project manager on a team.

We strive to change this.  We believe every organization and team should invest in project management if you want to work smarter and spend more time on what really matters.  Here’s some reasons why…

One of the many tenets we are taught in our training is the “Triangle of Truth”.  The project manager’s key function is historically described as making sure a project meets its objectives, is on time and on budget.
What happens more often than not is that a project manager is so focused on driving to deadline, they lose sight of the big picture.  I have often heard project managers and others describe their job as “my responsibility is to make sure we hit our schedule no matter what” — and this is dangerous thinking.  Our function is so much bigger than maintaining a list of tickets on schedule.

The project manager’s responsibility is to make sure we are doing the right work at the right time and with the right people.  Let’s break this down a bit.


Right
Work

A good project manager doesn’t simply take orders and execute on them.  We have the authority to ensure we are working on what will bring the biggest contribution to the organization, and constantly question and re-evaluate this based on a combination of hard data, an understanding of the business we are working in, and good intuition.

  • Is this the most important thing we could be doing right now?  If it isn’t, how can we bring the right people together to negotiate and agree to the right work?
  • How will this work both positively and negatively impact others?
  • Is the work defined enough that we feel confident in its execution?  What is the Minimum Viable Product?  Is the work actionable?
  • What does the data tell us and what decisions need to be made based on this data?


Right Time
A good project manager needs to have an understanding of both internal and external factors behind the schedule, and make decisions based on a deeper understanding of what is driving the timeline, maximize efficiency, and take the initiative to make adjustments along the way.

  • What are the market conditions like?  What are our competitors doing? Is it the right time to be launching this kind of product?
  • Are we managing time appropriately?  Is the team focused and if not, what can we do to eliminate the noise?
  • Are we working in the most efficient way?  What changes to our current process need to be made to maximize our efficiency?
  • Are there deadlines that are fixed due to events such as press releases, end of quarter, or financial reporting needs?


Right People
A good project manager is also a people manager.  Yes, I’m adjusting the “Cost” part of the triangle to represent people — because people’s time = money.  A good project manager knows that a primary function is to alleviate any roadblocks that get in the way of your team focusing on the most important work, even if this means picking up the slack yourself.  We are also responsible for team building, encouraging growth and learning, and are often the public face or “go-to person” on the team.

  • Do you have the right people on the team to accomplish your mission?  If not, what can you do to get the people you need?
  • Are the right communication methods in place so that all of the people involved in the project have a clear understanding of what is happening?  Do all of the people outside of the project have access to information?
  • Do all these people really need to be at this meeting?  What can we do to eliminate unnecessary meetings for people so they can focus?
  • Is the team happy, engaged, and enjoying their work?  What can we do or change to maximize happiness and productivity?


As you can see, there’s a lot more to project management than managing the schedule, taking notes and executing orders.  Project managers oversee the end-to-end execution of a project, making sure we are doing the right work at the right time and with the right people.  We are experts in efficiency, negotiation, communication, strategy and big picture thinking with the ability to break the big things down into actionable chunks.  We not only get things done — we get the right things done in the best way possible.

Lessons in Ratatouille

I have a son who is obsessed with Pixar movies, so I have seen “Ratatouille” about 100 times. It wasn’t until recently however, that I started to draw parallels between the movie’s lessons and lessons in organizational culture.

Lesson One: “Anyone Can Cook”
The core vision statement of Gusteau, the original chef who built his restaurant into an empire and what inspired a rat to pursue his dream to become a cook. There is debate around this vision within the movie — just because anyone can cook it doesn’t mean they should. Some people are better at this than others, and not every creation is going to make the menu. The point is that the vision is simple, aspirational, and inspiring.

Lesson Two: A gift is not enough — you need a passion. And mentors.
Remy the rat has a gift for being able to smell whatever ingredients are in something. He could have easily resigned to the comfortable position of poison checker for his rat clan. But he was soon bored — he wanted to create something. To add to this world instead of taking from it. You have people in our organization with gifts.  You have people with passion. You need to mentor these people (as imaginary Gusteau and Colette did for Remy) so they are able to express their passion creatively.

Lesson Three: Complacency = “Follow the Recipe”
With Gusteau dead, the new leaders at the restaurant have instructed the team to simply “follow the recipe”. Gusteau was paid to create — they are paid to follow what Gusteau already did and not improvise. Seems pretty logical — just keep doing what you know works and you continue on the same trajectory. Except the customers are getting bored. They want to know what does the chef have that is new. Organizations are in danger of falling into “follow the recipe” complacency where talented people are not willing to rock the boat due to fear of something or because they feel defeated, or simply restricted from making their own improvisations.

Lesson Four:  Frozen Foods might make you a lot of money, but at what cost to morale?
The new chef in charge is highly focused on making more money in the fastest, easiest way possible. In the movie, it is by expanding Gusteau’s recipes into a pre-packaged, frozen-foods line. Will it bring in revenue? Yes. Is anyone inspired?  No. The team feels like what they are doing is sacrificing the quality of their work, and killing the passion in their hearts that drives them to create every day.  In fact, there is a point in the movie where this plan is disbanded and the team rallies around a bonfire of the frozen foods and marketing materials and toasts to a new era of getting back to making real food for real people.

Lesson Five: “You are the boss. Inspire them.”
In the movie the team is about to face their toughest food critic who can make or break their restaurant. Linguini asks Colette “What should I do?”. She replies, “You are the boss. Inspire them.” I’m sure you all have teams of people who report to you, who look to you for guidance, mentorship, and they take their cues from what you do and what you say. It is your responsibility to inspire them, to ignite the passion that made them want to work there to begin with. If you don’t believe it — if you don’t feel it yourself you can’t expect them to believe and feel it too.

Lesson Six:  Give the customers something new by iterating on what already is.
The best dishes were iterations on existing recipes, not completely new ideas. How can you improve and innovate in simple ways to get some quick wins with measurable impact?  What can you do in the short term that is actionable and achievable but still innovative?

Lesson Seven:  Take off the toke and give your tiny chef the credit.
Remy grows continuously frustrated because he never receives recognition or credit for his work. (He spends most of the movie hiding under the toke of Linguini, telling him what to do.) Every company needs to do more in this area. A lot of work goes on behind the scenes that many people don’t see (and then they start to question the value of it). Bring more of this to the forefront. Thank people more, publicly recognize them, call them out for even the small things. Foster a culture of “I have your back.”. Remy is a rat — you can imagine what happened when people found out he was the cook behind all the innovation in the kitchen. Recognize people for taking initiative and have their back regardless if the outcome is good or bad.

Lesson Eight:  Connect with people on an emotional level.
This goes for both your employees and the customers you have. At the end of the movie there is this wonderful scene when the big bad critic guy tastes the dish of ratatouille prepared for him and he flashes back to an emotional moment where he is a boy being comforted by his mother after having gotten hurt falling off his bike. The food connected with him emotionally. Your products can do this too. You can do this with your staff. Listen, empathize, connect, guide, inspire.

If anything, I hope you go watch the movie. :-)

SummerQAmp: introducing QA as a career opportunity

The tech team at Gilt is excited to launch SummerQAmp (summer-kamp) with Bon Jovi, the White House, GroupMe and Onswipe.  This is a great initiative that is launching as a part of the White House’s Summer Jobs+ program to introduce Quality Assurance as a career path to youth in the U.S.

QA @ Gilt

Our Quality Assurance team is made up of individuals that are programmers with Computer Science degrees to others that started out in our Customer Support team without a technology degree.

We love to automate tests but we also understand the value of manual testing.  One thing that is common among the team members is that they are passionate about what they do and know the products they are testing better than anyone.  We also work with a great offshore team and they are led by our QA team in the U.S.  We see the value of outsourcing as a way to extend our business hours, not to replace jobs in the U.S.  There is nothing better than having an engineers and testers working side-by-side.

Our SummerQAmp Goal

By helping launch this program and participating in it, we hope to teach the values of Quality Assurance and demonstrate that it can be a career or a gateway to other areas within technology.  Although, we really hope their passion for breaking things will keep them wanting to test.

We also hope with this program that we can give people that may not know how to get started or the have financial means to get started in technology a chance to gain exposure to the skills necessary to be successful in a technology career.

Get involved by signing your company up at http://www.summerqamp.org.

Public API Language Bindings, Round 2

There’s been even more work done getting the Gilt API wrapped up in language bindings over the past two weeks and I’m here to present the newest to you in case any of them tickle your fancy.

gilt_api_php is a PHP client written by Gilt Tech member Dan Revel. This library has tests and a demo app to get you started on downloading and featuring sales and products in no time.

Gilt-Java, by Gilt Tech’s very own Nitin Dhar, is of course a Java library for the Public API. Nitin is working on some Android compatibility so mobile app developers don’t need to remain glued to our iOS bindings!

gilt-python is a brand new Python library brewed here at Gilt by engineer Andrew Ellerton. If you’re working in Python, give it a try and see how you like it!

We’re hard at work on compiling a permanent directory of client libraries like the ones we’ve featured on this blog and some of the applications people have built already. Email us soon if you have something you want to see included!

Affiliate Marketing Program Open to Developers

It’s been great to hear from developers over the past two weeks about their plans for the Gilt Public API, and we can only imagine what’s in the works out there that we haven’t heard about yet! Meanwhile, back at Gilt HQ, we’re hard at work on adding more to the API— more data and more ways of accessing what you want in the easiest way possible.

In the meantime, though, I’m happy to announce that we’ve finally got everything in place to enable you to participate in the affiliate marketing program. By enrolling in this program and adding a single parameter to all the requests you pass in, you can earn a competitive 6% commission on all sales from referred customers. When you consider that the luxury items on Gilt lead to average total order values of $150, that adds up pretty quickly.

All the information you need to get started has been added to the Gilt Developer Portal; the technical information is on the main documentation page and information about how to sign up for the affiliate program is available on our FAQ. What are you waiting for?

First Public API Language Bindings Available Now!

7 days ago, we launched our Public API and the accompanying Developer Portal. We’ve received a lot of great feedback, updated the Portal a bit to better give you the information you need, and talked to a lot of developers with some really neat ideas for ways to use the API. Now’s a great time to get started on your own application!

Today I’m here to share some of the hard work that people have been doing, both here at Gilt and in the developer community at large, to make the API more accessible to developers of specific languages. We now have the first API language bindings available for Javascript, Ruby, Objective-C, Scala, and Python!

There’s more to come; I’ll make sure to update here when we have support for more languages or other libraries that might tickle your fancy. Until then, this should be enough to get you started, right?

Javascript

Developed by Chris Young-Zawada here at Gilt, these Javascript language bindings are available as a jQuery-based implementation, so all you have to do is drop in a recent version of jQuery and this .js file and you’re off to the races!

Ruby

gem install kin is all you need to get started with using the Gilt API in Ruby. Developer Vivek Bhagwat put together this rubygem to let Ruby developers worldwide have access to Gilt’s great flash sales in their applications. Thanks, Vivek!

Objective-C

iOS development is kind of a big deal right now, and what better way to dip your toes in the water or extend the reach of your mobile app empire than to use this Gilt API iOS client library to integrate Gilt sales data into an app for iPhone, iPod Touch and/or iPad? (That’s a rhetorical question. This is the ultimate way to do those things.) The SDK was put together by a crack team of Gilt mobile developers: Louis Vera and Adam Kaplan.

Scala

Recently among my friends and, it seems, in the developer community at large, what started as a whisper (“Scala is pretty sweet”) has turned into a roar (“DEPLOY ALL THE SCALA”). If you’re one of the converts, I’m happy to tell you that developers Moses Nakamura and Vivek Bhagwat have prepared a fully-tested, simple to use library called Aurum that give you access to the Gilt API. Moses and Vivek win the prize for being the first client library developed outside of Gilt— it was up and ready for use fewer than 48 hours after the launch of the API!

Python

Not content to rest after that, Moses put together a simple Python wrapper for the Gilt API as well. It’s currently the slimmest of the client libraries highlighted here today, clocking in at just over 100 lines of code, but supports digging through all of the sales and product information that you need to explore our curated sales and do all kinds of fun stuff with them. Good luck, Pythonistas!

Managers! Become the Flywheel.

Arguably, the job of an engineering manager is to hire and sculpt a development team that is not only highly productive, but also precisely resourced for immediate business priorities.

Easier said than done. Businesses are highly erratic organisms. Especially start-ups. From week to week our business environment changes and company priorities evolve accordingly. In response to this, so does the position of senior management on the best way to adapt.

Senior managers flourish in these rough seas, happily charting new courses as new storms brew.

Development teams don’t fare as well when deprived of continuity. Reorganizing teams and re-prioritizing efforts at the first sign of trouble is problematic for a few reasons:

Engineers can’t be thought of as fungible resources that can easily skip between teams. Optimal team dynamics form slowly. Interactions take a while to mature and processes need time to be adapted to the specific needs of the team.

Great products don’t happen overnight either. They typically result from several iterations by stable teams. The first incarnation of any effort is almost always sub-par. This is as it should be. As Reid Hoffman said: “If you’re not embarrassed by your first product release, you’ve released too late”. The real magic happens after the first or second iteration when the team really starts understanding what the problem is and has acquired the domain knowledge and built the tools to attack it.

So how should you get the most of out your team in an unstable environment?

Balance the team: When the ratio between engineering team size to the rest of the company is too small, you create the capacity to generate many more ideas than can possibly be implemented, or even discussed fully. This results in endless distractions and prioritization sessions, and reduces critical focus on the work currently being done.

There are a few models for creating balance. One is to simply drive everything from the tech team, for example GitHub has zero managers and developers are 100% responsible for the product direction. This isn’t an option for most companies, but creating a engineering team that is appropriately resourced for the overall organization is.

Maintain Focus: Create a North Star for engineering teams by creating, communicating and repeating a strategy for your company and product. Define KPIs to track progress against the strategy. Stay focused on these KPIs for at least a quarter before iterating the strategy.

Limit Distractions: A colleague recently reminded me of a great quote from The Mythical Man Month: “the best engineering manager I ever saw served often as a giant flywheel, his inertia damping the fluctuations that came from the market and management people”.

Be the flywheel and keep your team focused on your strategy. Limit non-essential or off-track meetings and help cross functional teams focus and work tightly on active initiatives. Project rooms allowing face-to-face communication and tight teamwork can be extremely effective.

Empower and Encourage Ownership: Encourage teams to take complete, long-term ownership of initiatives and the artifacts (code) that they produce. Adopt tools that help reinforce ownership while maintaining flexibility (we use Gerrit at Gilt). Defend the team from the inevitable onslaught of requests to “re-prioritize” their current work that reduce ownership and focus.

Doing this isn’t easy, but as a managers our responsibility, perhaps our biggest responsibility is to make sure we have a strategy, to repeat it until people are tired hearing it and to do everything we can to maintain appropriate inertia around it.

Quinn.

Follow Gilt’s awesome tech team on twitter @gilttech and read about our new API at http://dev.gilt.com