Management Dima Malenko Management Dima Malenko

Performance boost of Agile

David Anderson in his recent post about Jeff Sutherland's speech mentioned Jeff's mentioning (looks like I began to spread rumors) 2x productivity improvement after deployment of Scrum in a CMMI Level 5 organization. Very impressive achievement especially for the company that has been focusing on continuous improvement for at least some time. This together with "official" data on CMMI performance, which suggest over 62% productivity improvement over non-CMMI processes, gives this company enormous advantage over an average competitor.

What would be interesting to see is what was so wrong with the original process that deployment of Scrum allowed to squeeze 200% of productivity out of the same resources. In my opinion greatest improvements come from eliminating waste. But I just do not see how waste can be sucking 50% of capacity of a CMMI Level 5 organization to give 2x productivity improvement when eliminated. Would be be very interesting to know details on how such a great achievement was possible.

Read More
Management, Musings Dima Malenko Management, Musings Dima Malenko

Outsourcing that helps you

Speaking about Niklas experience with outsourcing I wrote before. I could not help commenting his general description of his job. Don't get me wrong, but believe that outsourcing to 4 countries with 12 hours maximum time-zone difference that make you work 24/7 is not The Right Thing™. On the high-level I divide outsourcing into 2 types: outsourcing to save (i.e. Bad Outsourcing) and outsourcing to focus (i.e. Good Outsourcing).

When you outsource to save costs you send wrong signal to your vendor: whatever it is, it should be cheap. And when vendor receives this signal, he starts sacrificing things to save costs. The first thing he sacrifices is quality. Quality of office, quality of equipment, quality of workforce, quality of deliverables. This ends up as a nightmare for your managers and engineers.

On the contrary, I never repair my car myself. I outsource this activity to focus on my core competencies. And do not seek for cheap service providers. I seek for those whom I can trust, for those who save my time. Such outsourcing partners can boost your business by enabling you to deliver more value to your customers.

Read More
Uncategorized Dima Malenko Uncategorized Dima Malenko

Outsourcing to Ukraine: report from within

Niklas from Stockholm shares his experience with outsourcing to Ukraine. Everything he says is correct except for there are software companies in Ukraine whose developers are not all students. He goes

The entire company sat in two small rooms with computers everywhere, and the programmers was all young men from the Kiev university. But they where all very enthusiastic and with a lot of energy for the new tasks.

While energy and enthusiasm are important even more important for outsourcing kind of work are engineering experience and robust management approaches.

For this case I suggest a simple test. Ask yourself if you would hire students in your country if you could. If the answer is No, then why would you hire them in another country? For most cases you will want your outsourcing partner to have mature processes and management discipline that will save your time in coordinating with the remote team.

Read More
Uncategorized Dima Malenko Uncategorized Dima Malenko

How are you getting on?

Karate beltsRecently I found myself greeting my colleagues with "How are you getting on?". In fact, in Russian it reads somewhat different. Literally "How is your progress?". And you know what? The most important thing about progress is the mere fact that there is progress!

I started asking this unconsciously, but now I do this intentionally. This way I show people that I do not question their success and only want to share it with me. This is just a quick status meeting with positive coloration.

Read More
Uncategorized Dima Malenko Uncategorized Dima Malenko

Hypertext Agile journey

WebOne day I started reading "Are you part of the Post-Agile Movement?" post by David Anderson. Which lead me to "Agility is not the point". And then to "Agile Software Development vs. Agile Project Management". Which in turn offers a whole bunch of other quite interesting links. You see, with blogs hypertext works just great. Once started you are almost certain to enjoy a never ending journey through the Web.

Speaking of Agile, have you seen this interview with David Anderson? Must see!

Read More
Analysis, Musings Dima Malenko Analysis, Musings Dima Malenko

How 30-day trial is different from 30-day money back guarantee?

HappyWhen you download a trial version of a product you do not have any obligation to use or even install the product. The only your investment so far is time and traffic to download. If you do not have time to test drive the product today or tomorrow, no problem - you can download it again. If you installed it and do not like it, not a big deal - uninstall and go search for an alternative. Like it? Enter activation code and there you go!

Now you've bought a product with money back guarantee. You think "I need to try it. The more time I test it the more chance I'll catch the problem and get my money back." You do not have a single day to postpone this, you've already invested money into it. The positive case is simple - you simply continue using the product.

The negative case is way more difficult. One day you decide "This piece of software isn't worth the money I spent. Lets get them back." You start looking for the instructions how to apply for money back. You know what? No one even bothered with providing you such instructions! Developers did not want to think or probably even did not know about such feature of their product. You end up writing to sales with a claim for money back. I would imagine they reply with something like "We can offer you new updated version of our product. We are sure that if you try it you will reconsider!".

I bet you will not reconsider, they just ask for additional investment of time from you. And the money back begins! But technically and legally that is not an easy process. And I mean it. The situation is even more tricky if you bought the product from reseller, not the original vendor which offers the money back guarantee. But you go through it and get your money back.

AngryNow you get an e-mail "It is unfortunate that our product failed to meet you expectations. Blah-blah-blah. Please help us improve by telling what was wrong." Are they serious!? They've just wasted your time and probably money (shipping is not refunded) and made you go to competitor and now ask you to invest more time in helping them become better! Well, they ask for to much.

You see, this whole money back guarantee thing is not at all about you. It is all about the vendor.

Want to attract customers and make sure their bad stories do not get even worse? Offer trial versions to let users test drive your product with as less effort from their side as possible.

Read More
Analysis, Engineering Dima Malenko Analysis, Engineering Dima Malenko

Bug fixing? Oh, come on!

SkyscraperDon't take me wrong, but I'm convinced that software engineering is not about fixing bugs. Well, you have to fix bugs sometimes, but you do not have to that always. If you have product with no bugs, you do not have to fix them. All you have to do is build a product in a right way from the very beginning. From the time you've got the "Aha!" idea for a new piece of software. Think it's impossible? Have you ever seen civil engineers fix skyscraper after they've built it? I'm really surprised to see a press-release from INTSPEI entitled "Fix Bugs Early with INTSPEI P-Modeling Framework". If we are doomed to have defects in our software, then, of course, it is better to fix them early. But if we are not?

Read More
Uncategorized Dima Malenko Uncategorized Dima Malenko

Quality in your mind

All my past experience shows that quality is not about rigorous procedures, extensive trainings or punishments for poor results. Quality is a mindset. Quality is orientation of mental energy.

You can not simply declare quality like "From now on we will built only high-quality products". Quality needs to be cultivated. Day in and day out. Quality should be your way of living. In everything you do set high quality bar and reach it. If even if nobody will see and appreciate it. You will appreciate your well done job.

Paul Stovell puts it just right about writing program code. But generally it is true for everything we do.

Read More