Posts Tagged ‘outsourcing’
Estamos en busca de programadores de Drupal

Mexico Remittances Rise the Most in 5 Years
Posted by: admin in Nearsourcing on November 3rd, 2011
Interesting story on how, due to the economic crisis, mexicans living abroad in the US are “moving up the value chain” into higher paid service sector jobs. Also, the weakening of the peso against the dollar represents a great opportunities for companies interested in outsourcing. Read on.
An App Is Born
Posted by: andy in Agave Lab, Nearsourcing, iPhone and iPad on June 25th, 2010

Is that thing on vibrate?
We’re in a celebratory mood over here at Agave Lab this morning. . .
Last night, after working a scant 10 days and (mostly sleepless) nights, we delivered a very cool iPhone application into the gaping maw of the iTunes App Store Approval Process. We were working with one of the most highly-regarded design firms in the world (they’ve won countless awards and are consistently on the list of “Top 50 Design Firms”). The end client was a major luxury, auto manufacture. Unfortunately, we can’t disclose the identity of either but, the grace-under-pressure that was required and the compressed time frame made this a learning, as well as marginally traumatic, experience – kind if like giving birth but with fewer fluids involved. Here’s what we learned:
-Pick your partners carefully. The design firm is based in NY and in Stockholm. They were our primary point of contact – and they were fantastic. There were plenty of tense moments but even as tensions rose, they had our back. They were more than willing to offer advice, forgo sleep (the project manager in NY stayed up late with us for every session – fantastic guy), and keep a great sense of humor.
-Don’t bog down on a single issue. This project made extensive use of the multi-tasking capabilities of the new iPhone 4.0 OS. The problem was that it wasn’t released until the project was nearly due. No one had any idea of how it was going to work and we wasted a few precious days in the process trying to map out how it might work. In the end, we just shelved it and, as most things do, the solution popped up in due time and was easily implemented. Key message: if you get stuck, step back, do something else, and come back to it later.
-Be proactive about stuff that doesn’t look right. As a developer, working for a client, there is a temptation to do just what you’re told and nothing else. Often times we’d see something in the wireframes or the art that just didn’t look right. By pointing out the things that seemed odd or that we didn’t understand, we avoided building in functionality that, while technically in the spec, would have to be changed later.
-Balance architecture and UI. This one is always a bitch. We focused for the first few days on getting the architecture right – we’re a bit maniacal about code hygiene. That made the rest of the project go more smoothly but, 5 days into it, the client lead at the design firm (not an engineer) began to freak a bit. For him the product IS the UI. On the other hand, it’s easy to pound out the UI components first and then back into the architecture. But with this approach, the the same client lead is going to wonder what the hell you’ve been up to – “The app looked complete at day 3 and we’re now at day 7″! The solution to this seems to be to develop slices of the application from UI to architecture so that you’ve got steady progress on both fronts. Easy to say, tough to do but we’re going to work on it for the next project.
-Hire people that you like. We have a killer team. This project involved a lot of late nights, crappy food, and tension. Our team was stress-tested and passed with flying colors. I used to work for a Kleiner Perkins company and Ray Lane was on the board. I once asked him how he hired people and his response at first surprised me but throughout my career has become increasingly right on. He said, “The most important thing for me is that I like the person right away”. Simple, no? And it works. It’s really rare that someone works out that I generally didn’t get a good feel about in the first 30 seconds. I’ve been trying to work out why this is true. Maybe it’s this: I consider myself hard-working, smart, honest, etc. so I tend to like people who share those traits. There are a million subtle factors that, I suspect, get boiled down to an instant “vibe” – you either like someone, or you don’t – but that vibe signifies a lot more than a hunch. Pay attention to your hunches, they’re smarter than you are.
India Outsources To Mexico
Posted by: andy in Nearsourcing on April 21st, 2010
Interesting video on BPO outsourcing. I suppose that it make financial sense for them but is still seems a bit bizarre. Company in San Fran sends it’s work to India (with all of the inherent time zone, structural, cultural, and travel challenges) and they turn around and send it to Mexico (just 2 time zones ahead and 3.5 hours by plane). It seems like the extra step just compounds the problem, no?
Mexican Nearsourcing a bright spot in an otherwise dismal year.
Posted by: andy in Agave Lab, Nearsourcing on December 11th, 2009
Check out this well-written article about Mexico’s rocky 2009. The flu, recession, drug wars, rogue neutrinos – it’s been a hell of year. Thankfully, one happy little corner of the economy happens to be where we’re camped.
Another industry that has thrived in Mexico despite the recession is software development. Anchored in the city of Guadalajara and surrounding state of Jalisco, Mexican software engineers both develop their own software and provide “nearshoring” code writing services to software companies in California and elsewhere. Jalisco boasts over 200 information technology companies, and national IT organizations are projecting 11% growth for the sector in 2009 at a time when most other industries are facing contraction for the year.
The Agave Lab Method

A Nice Pair
So lately we’ve been fetching around for a way to take advantage of Pair Programming that would work for us. Some of our projects involve building relatively simple web sites. Often times, we’re building on top of a platform like Joomla, WordPress, Drupal, or Elgg, or we’re using pre-existing patterns and/or classes. In these cases, when we were pair programming, there were long periods where one of the programmers would be staring off into space while the other was installing a plug-in, fidgeting with a CSS file, or some other pedestrian bit of work. On the other hand, when we weren’t pair programming, we’d see programmers get stuck on a particularly thorny bit of code, architect themselves into a box, or miss a critical shortcut.
.
What to do? Pair programming seemed like overkill but without it, we were often spinning our wheels. Enter the “Agave Lab Method”. Here’s how it works:
- Programmers work in pairs.
- Each pair is given two projects.
- Every morning, the pair spends 3 hours together, with 1.5 hours dedicated to each project
- After the 3 hours in the morning, each programmer works on a project solo for the rest of the day
- The next day, the same thing happens EXCEPT, after the three hours working together, the programmers switch projects.
- So, for example, on Monday programmer 1 works on project A while programmer 2 works on project B. On Tuesday programmer 1 works on project B and programmer 2 works on project A. On Wednesday, we switch back.
Okay, I know that this sounds weird and complicated but stay with me here. Every morning, programmer A has to explain to programmer B what he/she did the day before so that he/she can pick up from where things were left off. In addition, each programmer needs to plan out, with the help of his/her partner, what he/she intends to accomplish that day. This forces the right things to happen:
- It forces the code into intelligible form. If you know that someone else is going to pick up where you left off, your code has to be clean, logical, and well-documented
- Two heads are better than one. Solutions are first architected (and later reviewed) with input from two people – this leads to more elegant code.
- A set of fresh eyes can spot potential bugs, and offer suggestions on how to re-factor cumbersome elements
- Knowledge transfer is maximized
- Boredom / burnout is diminished
- Programmers get better at verbally communicating what they’re doing, why, and where they’re having problems
- If there is a particularly thorny bit of code, the pair can co-program during the 1.5 hours of shared time, leaving the more understood programming tasks for solo time in the afternoon.
Of course all of these benefits flow from standard pair programming and, for more complicated projects, we’ll still do full-time pair programming. However, by using this modified approach, we get more throughput (progress on 2 projects rather than 1) and less staring-at-the-wall time for those projects that involve a lot of straight-forward implementation.
AMR Research – Mexico, the Preferred Nearshoring Destination.
Posted by: andy in Nearsourcing on May 18th, 2009
From a recent article:
A quarterly report on supply chain risk from AMR Research found that buyers will increase their nearshoring sourcing and manufacturing activities by a ratio of 5 to 1. “Mexico is the preferred nearshoring destination, with 84% of the respondents choosing it as a place for sourcing or manufacturing
H1B Visas for Tech Workers
Posted by: andy in Nearsourcing on April 12th, 2009
So, I know that the US’s protectionist stance toward foreign talent is GOOD for our company, but I can’t help but see that it’s one of the dumbest things for the country at large. An influx of talented, motivated, innovated workers that might then want to remain in the country – oh, no, that would never work! Read the (longish) article here.




