Beating austerity and the down turn without curbing investment in technology

When times are hard we need to look at what we can do to tighten the proverbial belt, this holds true for both the private and the public sector.

It is in tough times that businesses should not hold back or shy away from investing in better processes or improved tech platforms to give themselves the edge they need to not only survive the lean times but to come out stronger on the other side and in a position to be able to make way into new territories/niches and beat the competition that has lacked the sense/foresight to invest in more efficient process and systems to better address the changing market needs/conditions.

In the case of the public sector organisations austerity spells budget cuts and a drive towards efficiency and cost savings… more with less and forever improving services for the public (if the incumbents want to win the next election).

One way to beat austerity is to ditch proprietary platforms in favour of open source platforms. This is a no brainer.

Too often businesses over look the benefits and the obvious advantages of using open source platforms, to list a few: economic hosting costs, wide availability of resources, crowd sourcing of solutions, code and support, freedom from a single vendor and the freedom to modify the software as you see fit, when you see fit.

More often the sales teams from proprietary vendors convince governmental departments to stick to their platforms and sell them discounted upgrades to keep them in their cages. You are the prisoner and the vendors are number 2.

From OpenOffice, OpenERP, Moodle, DoceboLMS, SugarCRM, PillarOne, Rapid-i, Jitsi, Zimbra, CineFX, GIMP, Drupal, Joomla and much more…  there is very little that is not available or doable using open source platforms.

And should you feel your requirements need a custom application not available in the OS community then develop it by all means but use OS technologies and save yourself a packet on server and API licenses and by the way some OS application development frameworks will save you time and ££$$€€ compared to proprietary development environments.

So why pay an arm for proprietary applications, a leg for expensive server licenses!? Break on through to the Other Side.

One more option to look on her packing at it levitra vardenafil it of course to take not so simply because a form another and there is a wish to hold in hand her not so strongly. You can carry by me on a wide field.

From sourcing to selection: setting up an offshore development centre

Chris Kruppa from Furtwangen University pointed out that though

the last post was informative it did not cover my own experience of setting up an offshore development centre in detail. Thank you Chris. So this post is an addendum to the last two posts detailing my experience of going offshore.

The why!
Though the ‘why a software project management consultancy decided to invest in its own offshore development center?’ is a separate series of posts let me touch upon it very briefly here so that you can appreciate where ‘I am coming from’. By 2002 I had worked with over a dozen offshore software service providers in half a dozen locations and had come to the conclusion that there was a gap in the market, an opportunity to do a better job than most if not all!

With my venture at the time I had set my eyes upon an opportunity was about to invest in my very first SAAS product, and the inconsistencies of pure offshore providers was not comforting. It was an easy decision, we could bring a range of products to market faster and more economically had we our own facility and we could tap into the demand for quality software services partners in the UK for third parties as well. And we already had a client base for whom we managed multiple software projects offshore. The need was internally and externally driven with a revenue model from day 1: it was a no brainer.

The model.
Once decided that my venture required our own captive offshore development center somewhere in the world the first area of discussion was the model we would use: that in turn would have a major bearing on the location choice and everything else that followed. From the very start we were not in favor of the predominant model of an onshore sales office that funnels everything offshore and adds little value to the engagement onshore. So the model was to have a number of functions that would be exclusively onshore, some would be duplicated onshore and offshore and the offshore setup from the very beginning would be modeled on ‘how we do things here in the UK’ and not how offshore development centers generally do things.
The model was to duplicate business analysis and R&D at both locations, this duplication has yielded some amazing results for us, our clients and end users over the years. Then client, account, program and project management obviously remain onshore and lastly support is also duplicated onshore and offshore: data support is provided onshore and everything other form of support (1st, 2nd and 3rd line) sits offshore. Getting the balance right is key (innovative service design): the mix is tweaked every now and then based on evolving client, project and product requirements: there is no constant in our world! the skill set mix and functions that are exclusive and/or duplicated between the onshore and offshore keep evolving to give our clients and users the best possible service delivery.

The location.
Having had the hands on experience of working with a number of locations the critical factors for us were retention rates, wage inflation, ease of working with the local bureaucracy (red tape), tax benefits for setting up a software shop and other inward investment incentives. Yes political and economic stability too were a factor but if you are going to go offshore you have to face it you are heading towards the developing world and there are some luxuries you will not get to enjoy! having said that the United Kingdom and Belgium haven’t been exactly politically stable either lately! a coalition government in one and lack of one in the other…  the ongoing financial crisis has exposed western economies more so than the credit prudent developing economies specially of South Asia. So political and economic stability are not a dead cert anywhere in the global village!

Our choice was Islamabad in Pakistan.  We opted for Pakistan as a location due to reasonable infrastructure and resource costs, ease of doing business, availability of skill, better retention rates and personal ties in that order. Some interesting facts for you; Pakistan is the second easiest place to do business in South Asia (according to the doing Business Project), Pakistan has more English speakers than, South Africa, Turkey, Singapore or Malaysia and France. There are just over 1200 IT companies operating in Pakistan with a healthy number operated and owned by international companies. Historically there has been strong domestic demand that has helped to mature the nascent industry. Yes there are on the ground challenges but not if you do it properly and export best practices we have learnt and apply in your own economy, then you will be better received than others and will benefit more from the relationship… off shore technical houses in South Asia are not sweat shops, in many instances they have and follow more standards than many companies do in the developed world.

The set up.
Setting up in Islamabad in Pakistan was unexpectedly simple and straight forward, The British High Commission, the Pakistan Software Export Board and the all Pakistan software association (P@SHA) were exceptionally helpful in assisting us with everything from which law firm to engage, company formation, office set up, required registrations, shortlisting equipment suppliers, recruitment and much more: in fact we had the company, our start up team, a temporary office all set up and operational within a fortnight of landing in Islamabad (we had hired four resources a month before we landed as freelancers and then converted their contracts into full time employees). Though this is not meant to be a sales pitch for Pakistan but that is how it turned out for us. There is of course the reality of terrorism and 2004 was no easy year for terrorism anywhere on the third rock let alone Pakistan a front line state in the war on global terror! but other than the inconvenience of road blocks around certain sensitive neighborhoods like the diplomatic enclave and zero point (near the presidency) and the stories across the front page there was little evidence of it interfering with our work or routine. I shall cover Pakistan as an offshore software services location at length in later posts.

The outcome!
Our offshore operation was operational in a fortnight and effective within a month. Our offshore team delivered release 1.0 of our first product within three months of coming online and by the end of our first quarter we had multiple product development, support and R&D teams delivering tangible value to our UK operations. Within our first year we achieved ISO 9001:2000 and within eighteen months ISO 27001. Our ability to retain staff combined with the competence of the local skill pool has meant our support desk has been astounding, proactive and has been instrumental in uptake and user retention: the proof comes from the number of registered users on our own products and on those we manage for our clients: 1,800,000 users and growing daily.
In terms of ROI we saw the return on our initial investment delivered within the first year and the rest is history.
To date our offshore development center has worked on designing, delivering, maintaining and supporting eight of our own products for the web and multiple mobile platforms, numerous one off projects and over a dozen products for third parties in technologies ranging from .NET, C++, J2EE, Ruby on Rails, PHP, Python and others for web, mobile and digital TV platforms. The offshore arm’s effectiveness has lead to new service development and we now manage a number of teams for third party software companies in the UK and Europe… so the outcome has exceeded our expectations so far! (touch wood!).

The future…
Over the years we have developed formidable expertise in a number of languages, platforms and technologies delivering a mix of services from pure builds to hosting teams and partnering with start-ups on innovative journeys into the unknown! and we plan to continue to do so and more! Currently we have our R&D sights firmly set on Natural interaction using Kinect and PrimeSensor™: preparing for the Cambrian explosion of business applications going beyond the restraints of wired or wireless controllers. Our UK arm has been going strong for over eleven years and our offshore arm for over six years.. the  future is bright…. what else can I say… other than stay tuned.

And of course if you have specific questions about going offshore, or mixing the onshore and offshore skills mix to your advantage drop us a line.

…Chris I hope this has answered your question!

From sourcing to selection: onshore? off shore? near shore? or Hybrid?

So you have decided to explore the ‘outsourcing’ option…great. You have thought through your objectives and decided on the ‘functions’ or ‘domains’ to outsource partially or outright?… great! so what is it that you are looking for?…. ‘a reliable software development partner’ did you say?…. buona fortuna.

Firstly get it in your head… embed it. Your organization is unique, and you must think hard about your best fit provider to gain ‘across the board’ benefits from a technology partner. You need the right ‘tech’ partner for ‘YOU’: a service provider whose skill sets, creativity, desire for success, innovative mindset, attitude, principles and values will complement and enhance your own.

It is not black and white it is a freakin’ rainbow! if you want to get the best out of a team… the team must gel….that’s common sense… for tech outsourcing to succeed your internal team (be it program management team or the in-house development team) and your external provider’s team must work as a single business unit. Though it wont happen overnight you can maximize your success rate by being methodological about your partner selection.

At the start of my career as a technology entrepreneur I too made the most common of mistakes that I now see many companies making and have on occasions been called in to parachute their projects out of trouble for. That is jumping the gun on partner selection! you know what functions, projects and roles you want to outsource and you go full throttle looking for a partner without any consideration to the location model you ought to use. Yup… location, location, location as Kirstie Allsopp keeps reminding us!

Before you think of the partner you need to think what will work best for you: completely onshore? completely offshore? a mix of the two that is called hybrid, right shore, smart shore and a gazillion other things! Each location model has its merits and demerits, some are infinitely better than others but what will work like a charm for one project may not necessarily work the same charm on another. Onshore, near-shore, offshore or a hybrid model? ideally you should not have to choose one or the other, You should have what works best for you: and be able to chop and change as required.

I have a preference for a hybrid model: an onshore and offshore base for me is a must in any software services partner, it mitigates a number of risks automatically from cultural, exchange rate to territorial risks all in one go. How so? Simple… you contract with your selected partner onshore and hence are legally secured in your environment and are not at the mercy of an arbitrator or a court in a far flung land in case the worst does happen.

The most important requirement in my experience is to have the ability to interconnect as many skills and talents as possible and have the support to distribute work or requirements to the right skill sets wherever they may sit in the world. You need to think more along the lines of collaboration rather than making your weakness someone else’s challenge! – which is frequently witnessed in outsourcing projects – it is not about washing your hands clean it is about building a deliverable together.

So the answer to the question: onshore? off shore? near shore? or Hybrid? is ‘Anyshore’ that works best for you! as I said earlier my preference and acceptable risk exposure meant I set up a hybrid operation with onshore and offshore delivery capabilities. And it has worked out really well for my own products, projects and my clients. Using a hybrid model provides the peace of mind of working with a local partner and the benefit of our offshore arm without the risks associated with a pure offshore operation.

An alternative scenario your software service partner may have an onshore presence and facility but you may not make use of it and concentrate on their offshore capabilities. I work with my clients on different models: some clients prefer to exclusively liaise with my onshore team and leave the management of delivery by the offshore teams with the onshore project managers, others who have their own internal project management capabilities choose to manage and liaise with the offshore team themselves. Ideally you need to have a partner that can offer both onshore and off shore or a mix of services best suited to your projects and processes.

From Sourcing to Selection: Finding a Technology partner

So you need to source tech-services… Have you thought through your aims and objectives?

When determining the ‘what’ to outsource (onshore or offshore), did you consider all parts of the value chain that can be done better, more efficiently, more economically, faster, etc. by an external tech partner? Did you consider all models of tech-sourcing from team augmentation to retained resources? How about ‘what’ you need to source-in, what is your forte, high risk or core to your business?

I have a client in the new media sector whose forte is client acquisition, account management and almost everything to do with delivery is sourced-in, it works for some in the same vertical but not so well for others. While working with a start up in Sweden their outsourced service solution was a mixture of onshore team augmentation and off shoring agile testing. For a client in the healthcare sector in the UK my relationship extends from discovery & innovation workshops to finding them tech-service partners to recycle their software products.

The point is every engagement is unique; some need a bespoke service design whilst others need a tailored approach – there is no off the peg approach to tech-sourcing partnerships.

Your organisation is unique, and you need to think long and hard about your best fit provider to gain ‘across the board’ benefits from sourcing in technology services.

You need to find the right partner for YOU: a service provider whose skill sets, creativity, desire for innovation, attitude, passion, principles and values will complement and enhance your own. It is not black and white it is a freakin’ rainbow! if you want to get the best out of a team the team must gel…. for the relationship to succeed your internal teams and your provider’s external teams must work as a single unit regardless of proximity.

Though it wont happen over night you can maximize your success rate by asking yourself ‘What am I sourcing in and why?’.

All or parts of your software development life cycle can be outsourced and executed by a carefully selected third party better, more efficiently, more economically, faster than you depending upon your unique circumstances; your market position, strengths, challenges, strategy, and constraints amongst a multitude of variables.

You and your teams have to determine the ‘what’ and ‘why’ for your business… external consultants like myself can facilitate the discovery process but the discovery has to come from within. And there are tools to help you do so.

On a slight tangent not enough start ups or maturing businesses carry out near enough regular business analysis. You and your teams must assess and re-asses your analysis reports every quarter as a minimum, ideally monthly unless it is deemed an exemption. For your organisation/resources/talents/products/services/ventures/concepts from the bottom up.

You need to be allocating time for regular analysis of your business to keep things in focus and gunning towards your objectives. At Cranfield I learned it’s called ‘working on your business’ and it is one of the best habits I took away from my time there.

It may sound daunting but these are eye opening, surprising and fun exercises! and there are a multitude of tools that can aid this process; a few I religiously use during discovery workshops I run:

  • SWOT analysis (Strengths, Weaknesses, Opportunities, and Threat) – you must conduct one for all your talent, services, products and a holistic one.
  • SCORE analysis (Strengths, Challenges, Options, Responses, Effectiveness) – compliments and builds on SWOT rather nicely.
  • PEST/STEEPLE analysis (Social/Demographic, Technological, Economic, Environmental, Political, Legal, Ethical) –  gives you a birds eye view of you in your environment.
  • Ansoff Matrix assists you to map product/market growth strategically – more insightful when combined with cost-benefit analysis. Never surprises me when I hear a fellow entrepreneur go Ansoff who!? Ansoff is the most under rated yet critical tool for thinking for stat-up entrepreneurs. All I am saying is we ought to use it more often.
  • Cross Impact Analysis – its strengths is that it forces attention towards “chains of causality: x affects y; y affects z”. Surprisingly eye opening mixed with an away weekend for the team(s) and it works best in the morning session time boxed till lunch with presentations the next morning.).

And if you find the tool is bogging you down keep it simple and adapt the tool for your circumstances, tools and documentation must always follow the ‘Just enough’ agile rule, and this varies from company to company and project to project.

The key is to assess both before and after actions are taken and to routinely revisit the data and keeping your findings updated, tick of and celebrate where objectives and actions have been achieved and address where things could be, were planned to be better. Its all about being data informed not inundated with data!

These exercises will shape your strategy and enable you to identify and assess areas/business/development functions that ought to be outsourced to a specialist who would perform them better, faster and more economically thank you. Leaving you with more time to improve what you are already good at.

Choosing A Model: Tactical Tech-Sourcing 101: Going offshore on-demand

Tactical tech-sourcing takes many forms/flavors; my previous post dealt with bringing skills in or increasing capacity by augmenting your in-house team with an outsourcing service provider’s resources. This post is about going offshore on-demand.

More often than not going offshore on-demand is a strategic decision and not a knee jerk reaction. The decision to outsource software development offshore or on a hybrid model is based on a combination of factors; saving time and money on a short run activity, bringing in temporary skills they do not wish to add to their skill base on a permanent basis, in some cases introducing their in-house resources to new skill sets with augmented team members, to benchmark internal capabilities against an external service provider, bringing in fresh minds to give your innovation team a boost and of course to relieve capacity issues. Clearly not an exhaustive list as some of you might be hoping to find here but the point is to make you think and not dump data on you! having said that lets waltz with a tad bit more detail.

Saving time and money on a short run activity: The classic reason, where the project outsourced is tight on timeline and budget and outsourcing companies by their nature (with considerable exceptions!) are tuned for fast turn around; that is the nature of a specialist. A fallacy is that for project outsourced offshore that has a tight timeline and a restricted budget the requirements have to be set in stone, they do not. As long as the end client or domain experts are accessible, the time line and budget reflective of the project needs any outsourcing software development provider can apply a number of methodologies to deliver on time and on budget regardless of the state of the requirements or specifications. Agile is the only road to take on such projects, short sprints ensure the iterations are used to keep the domain experts, client expectations and developer understanding in sync.

Bringing in temporary skills a company does not wish to add to their skill base on a permanent basis: The best example everyone is familiar with on this note is still Y2K! adding legacy platforms skills to the current skills mix was not on anyone’s priority list hence Y2K saw a boom in offshore software service demand. This holds true for not only legacy systems but for one off projects as well in today’s languages, it is not only programming or coding that falls into this realm, online demos, search engine optimization, technical and content writing outsourcing all fall under this category… and the list goes on and on!

Introducing new skill sets with augmented team members: Not only is this a more productive means of introducing new skills it turns out to be more economical as well in comparison to externally sourced training and development programs or running internal training programs. The best example I have to cite for this is a recent engagement where I sourced and managed senior contract resources to augment an in-house client team, the client’s objective was to add Ruby on Rails to their existing skill set and having already invested in a few externally run training courses with no significant result they were open to my suggestion of ‘learning by doing’, the combined teams worked on a project over a four week period and though the learning curve was steep for their in-house resources their competence levels, confidence and understanding of the frame work got a steroid boost no in class course or online training materials could have delivered.

Benchmarking internal capabilities against an external service provider: Everyone, every team needs to test itself frequently. Though every challenging project is a test of skills and attitude we all should benchmark ourselves against those who are niche specialists or those we consider better than ourselves at a given function. I know peers in the industry do not agree with me on this approach but hey it is not the next man (or woman’s) validation that should drive our desire to better ourselves! it should come from within. Previously I have uses third party service providers to do just that for selective internal functions in my ventures, our favorites being user experience and software testing.

R&D and innovation: getting to a prototype at a fraction of the cost: The general perception is that innovation is not the realm of an offshore software service provider, this is simply untrue. Innovation and creativity knows no boundaries. Now more so than ever client briefs assume the software service provider will deliver that elusive silver bullet not yet defined. Tactical outsourcing of innovation is much more objective and quantitative than that! The most common form this takes is the off-shoring of your prototype product, reengineering of an existing one or testing out a ‘back of a napkin’ concept on a shoe string… its all outsourcing of software R&D/innovation. This is an area where only the best of software development providers survive and size does not matter!

Joint onshore/offshore innovation is not as simple as suggesting alternatives as some have come to believe and expect in the industry, it is a managed positive conflict that creates value in the output of both the teams. It is a balance of relationships between very bright and talented individuals and teams… lets not mince words aingh! and where it works it delivers value beyond plans and expectations and leads to a more strategic view of the outsourced provider’s capabilities and value in the supply chain.

Relieving capacity issues: Some may argue this the most common reason for clients to outsource projects on an on-demand basis, be it special projects or unexpected demand outsourcing is the best method to bridge the gap. There is a preconception that such engagements are exclusive to software development; as if it is only the developers who may be maxed out in a tech company! such temporary relief can take the form of complete project/product builds to documentation of an upgrade being released over the winter break, testing, content writing… even deployment of applications have been outsourced to trusted partners on a tactical basis.

It is often the case that a tactical decision to outsource software development offshore leads to a strategic one following the success of the tactical option taken for any number of reasons. And It is not necessary that your on-demand needs exist in isolation to any ongoing strategic outsourcing arrangements you may have in place already, it is often the case that on-demand services are utilized on top of existing longer term strategic outsourcing contracts. All this of course depends on successful delivery and realization of the benefits the success yields.

Seasons Greetings

I hope this post has given you enough food for thought to last you through the festive break! my next few posts will get closer to selecting an offshore software services partner (as a few of you have emailed for)… what to look for, what to avoid and how to assess which one of the shortlisted are best suited for your business.

And being the last post before 2011… have a fabulous Christmas eve, day and a new year break, good luck with your resolutions (peace on the third rock goes without saying!) and thank you for following the blog, I look forward to sharing more of my experiences with you in the new year!