Labs & RRapido Methodology

http://www.flickr.com/photos/margolove/1810357551/sizes/s/Eight+ months ago I decided to bring a change to my life. I decided to resign to my Account Director position at Studiocom. I was sure that even when Studiocom was named as one of the best place to work here in Colombia, there was no opportunity for me to grow personal or professional. I was working hard more than a year on amazing projects, getting results for the company, and the client, but with no professional opportunities, or any recognition or reward, feeling frustration and of course, leading me to a no-return situation.

Then, I took a chance with a well-known entrepreneur at Torrenegra Labs – thanks to Leo Suarez and Alex Torrenegra. It was not a smooth transition. At the beginning I was supposed to work on a project (shh! It is a secret one), however after our first formal review on the scope and budget, we decided to keep this initiative on hold. It was back on December! OMG! What am I going to do?

Fortunately for me, Alex invited me to join the LetMeGo Team as the owner of the Referral Program (during my first three months here at Torrenegra Labs I offered my help on LetMeGo project giving a hand to launch the Beta on time). I joined the team last January. So, “What? Referral what?” I was confused and I was feeling ignorant, what is a referral program? and how am I suppose build a successful referral program?

I started working as Architect of the LetMeGo Subsystem on charge of the Referral Program, and then of course, as any good Architect, I started coding, but not coding like I was used to. That is when RRapido Methodology and I formally met. Even when it is a mix of Agile, Traditional Development and Test Driven development, I have to say that the most valuable asset that we have is our methodology. I’m not saying it is perfect or a “One-Size-Fits-All”, however I will give my impressions on it:

  • Applied Test Driven Development reduces the chances of getting errors on late development phases or iterations (I will not discuss here if they are the same or not).
  • Extremely well document UC, TC and UI – LMG is the first project I had participated on were tech docs are almost perfect and detailed good enough to allow clear trace between code, tests and UC – it is a little bit confusing because Agile Manifesto includes a line “Working software over comprehensive documentation” – what does it means anyway? Even on traditional approach you are always looking for “working software”.
  • Noisy communications – RRapido fails on how things are communicated. We had what we call here in Colombia “meetin-gitis”, but through Skype. Most of the times we over communicate everything to everybogy. With time you get used to it, but it is like be in a party with everybody talking each other and with loud music.
  • Microblogging looks like useless. We use Yammer, I microblogging tool for private(?) teams. We used it to promote our tasks every day -I’ve to admit that I’m not most dedicated team member to that.
  • Small group with one “I-know-everything-about-the-system” manager. RRapido, and the most significant and valuable addition to our team is what Scrum calls the Product Owner. Alex is our product owner, he is a technical person that has developed a great “business” sense. With his experience and dedication RRapido and the whole project is kept on track. There is no doubt about it. One day without Alex is a day when things slow down (a little bit)

So it is time to talk about Mr. Alex or  Don Alex. I disagree about few practices on Alex management style however, and based on the facts and the results I say: He is on care of EVERY detail of the system, leading the team to a successful product and “working software”. He is the dream of every development team, a dedicated and objective Product Owner that understands technical challenges and risks of every decision. Alex does not ask for outstanding deliverables all the time, but when he does that, he also provides the tools and time to succeed.

RRapido Methodology depends 100% on the Product Owner -what we call Product Developer. He/she is the key of the RRapido Methodology, as the keeper of the process. It is so difficult to know about the system, the business, the market, the customer drivers, to have relevant technical background on the development, to have passion about the business, and also to be the process owner, that RRapido becomes a process for few -maybe a process that can be adapted for those who had worked with Alex.

Recomendations

As my dad always says, if your are complaining about something that you can change, why you do not change it. I decided then to write this post, sure that Torrenegra Team will read it and probably -if I succeed- will include few process to the methodology.

  • Methodology is a set of steps, it is not a ToDo list. RRapido feels like a set of things to do, but I would prefer if we can set them as a procedure.
  • Communications are noisy, One-on-One meetings are great, Publishing Notification Board is ok, all other are noisy. I would prefer a message board or workspace site.
  • Microblogging is useless when weekly tasks have been set. Remove it or use it to assign tasks, not to report them.
  • Documentation. I’m in love with documentation, it is not perfect, but it supplies all developers need to code, test and validate the required functionality, however, navigation between UC, UT and UI is painfull. I would look for another way to link UC and UI (maybe a two column page or something similar).
  • By formalizing RRapido steps, dependency on the Product Developer role will be reduced.
  • Test Driven Development Rocks!

When criticism becomes feedback

YARGHHH!It is curious how all of us take criticism in a bad way. Most of the times, and even more during hard times like this we live now, businesses and partners are criticize every second, like on how they address their customers needs, on how they handle the crisis, on how the company performs financially, on how we react to the situations, and even how senior management is affected -because sometimes senior management is not affected at all.

During hard times we, of course, feel additional pressure on every duty we have to accomplish, on both personal and professional fields. So it is not difficult to explode and to fail on our communication methods and/or messages. Express our disagreement as a criticism could not be the best way, but it is common and widely used one. The problem is that communication is always between at least two actors, sender and receiver (source and destination), and probably our criticism will affect others directly. However, a problem is always a source of opportunities. Receivers, those who got criticized, can get the very best of every criticism and evolve it into feedback. There is no criticism without foundation, even for those how want to emotionally affect others.

As project managers we need to be the example, we need to effectively communicate information to every relevant stakeholder but, something that is not fully promoted is that we also have to handle the inputs from a 2-way process. It is not about giving and giving, it is about receiving and processing too.


What is going on with offshore in Colombia?

OffshoreColombia is a country full of high qualified developers, designers and in general, great web builder experts. However something is going wrong with those lucky guys that work for companies who have offshore contracts. After few months or even years of great work, people start feeling comfortable as well-paid workers and then suddenly and without notice, quality sense of work and care about details fade away. Why? I’m not sure, but I will do my best trying to discover the reasons through this post -and this is because I’m one of those lucky guys working for great company, but I REALLY do not want to start feeling comfortable, and  I REALLY REALLY do not want to start losing my tiny sense of quality and responsibility.

Feeling comfortable about having a job is not bad at all, even more these days during this crisis time, but is it really enough? Dedicated workers stand out from others because they do not feel comfortable, they are always looking for opportunities of doing great and better things. When this comfortable feeling grows more than it should, workers start forgetting that they are in Colombia, and start asking for foreign benefits and privileges, and they even believe that they deserve them. And that’s wrong, that’s totally wrong. It is not bad at all to get few additional benefits, however, it doesn’ t mean we should take them for granted, we are still working in Colombia.

One of the amazing transformations of Colombian workers is: once we get used to a job,  we believe we can decide our own duties and decide what to do and when. Well my friends, most of the time and all around the world, bosses decides what must be done and when. So WTF! I really can’t deal with that, it piss me off. Job is responsibility, it is not about doing “favors” to the managers, it is about to do what it is supposed because you are getting paid for that. It is not because you want, it is because you have to -and I’m talking about legal, non-extra activities of course, but just to point that out.

Another endemic attitude is to look for responsible when there is no other guy doing the job. I will no get into this because… do I need to? A variance of this behaviour: people start doing EXACTLY what they were asked, even if managers are expecting a little support. They perform as machines, they do not evaluate and therefore there is no added value. If there is a misspelled word on their assignment description, they do not fix it, if there is something that requires some additional work or a little of analysis, they will try to delegate it. But, hey! keep in mind they are great developers, keep in mind we are not talking about junior resources. So why they decide to do that? Maybe I just pointed it out, it is because they do not want to assume their responsibility.

This comfortable behaviour is surrounding me for a little while, and I will say NO. I do not want to become one of those lazy but great workers that decide to keep their jobs by giving up their abilities. I will do my best tomorrow, and the day after tomorrow. Not sure what it means but probably I have an idea.


Team Building vs. Labor Climate

Few days ago I had a conversation with one of the most active Bloggers I had ever known: Bas de Baar about project management in Colombia.I’m not the most experienced project manager here in Colombia, but probably I had worked for few companies that provide me with a very well understanding of what is going on with project management in Colombia.

Project Management isn’t new in Colombia. At least for IT and software related companies Project Managers have been there forever (due to the nature of the IT and software development processes). But, there is something missing about PM here in Colombia: Team Building.

I do believe that Labor Climate and Team Building aren’t the same. As I said to Bas, almost all Colombians -good, not so good, and bad ones- will try to be your friend. Colombian people is really appreciated because of their willingness and attitude of service and camaraderie (did I write it right?). However those are two different things: try to be your friend, and be a good boss, project manager or director.

And that’s why Labor Climate seems to be amazing on Colombian SW development related companies even when “team building” is not a priority. And it could be good, because of its impact on the organizational behavior, improve the labor climate will probably  boost the team efficiency and collaboration. But, not to perform team building activities will be bad for long-term employee & employers relationship, because “personal” friendship isn’t necessarily based on the idea of personal and professional growth and career development.

Furthermore,  SW developers, designers, and architects, and IT project managers, prefers to have project-based relationships with their employers. And for those who know, contractors, even if they are good doing what they do, increase the probability of certain risks to occur -example: dependency on people because there is no knowledge spread opportunity.

To conclude. there is a big difference between “having a great time with amazing people at the office” and “having a great work experience”. It should be a balance between labor climate and team building to ensure a short-term motivation, but also a long-term relationship between employers and employees.


Self-organized teams

Self-organization is a process of attraction and repulsion in which the internal organization of a system, normally an open system, increases in complexity without being guided or managed by an outside source. Wikipedia

Self-organized teams can be identified by some simple rules -I didn’t think about it until I heard Esther Derby @Project Shrink- that I would try to explain as maturity levels.

  • Stage One: Managing and monitoring their own work performance. They assess the complexity of the tasks and the skills required to validate and assign the work in an effective manner. Then they also monitor the progress and performance.
  • Stage Two: Cross training. Team is able to identify its weaknesses and bottleneck and plan a training to transfer knowledge and skills across the team members.
  • Stage Three: Hiring and Firing. This one is, one of the most difficult levels to achieve due to the ability of the team to manage/control their own cost and budget. Most of the teams do not have even knowledge about the assigned budget, the project expected profitability or even to handle overhead. This is because small teams are most of the cases self-organized and probably do not have other knowledge than its production skills -production means skills required to do the job. At this level, the whole team is able to participate during a new team member hiring process or even to decide -on a performance basis- who should leave the team.

Self-organized doesn’t mean at all “unmanaged” team, it probably means that team is a mature enough to execute few of the manager tasks -but not all of them. Even inside self-organized teams is possible to find a leader or somebody that gives directions to the team -because the team is designated to do something that for sure somebody is requesting somewhere. So, yes, self-organized also have to follow directions (client or top-management). So there is room for Project Managers. However it is complicated to find the balance between what has to be done and what has to be delegated by the PM without negatively affecting the performance. Team is mature enough to be empowered but, I believe, if there is nothing to be managed then it is probably because it is not a self-organized team, it is because it is probably a spin-off.

It depends on the project manager culture and his/her personal strategy of management implementation -could be based on trust, or performance control, or micromanagement, because not all of the PM out there will have the aptitude to handle self-organized teams. And by the way, not all the skilled workers will fit in a team of this nature, some people is great following instructions, other people would be more productive if they are empowered to take some decisions.

Reblog this post [with Zemanta]