
Ask HN: What are your views on India based development agencies? - desaiguddu
We are a mobile development agency based in India I understand there are plenty of us on various platforms.<p>How do we work on changing customer&#x27;s perspective?
======
osrec
I've used large (Wipro/TCS) and small firms, and poor code quality is common
amongst them all. What's more apparent is their lack of ability to innovate or
think on their feet. If I give them a "familiar" problem to solve, they're
generally okay, but anything that requires them to think outside of the box,
they tend to overcomplicate and the result is often terrible. Also, I no
longer find them to be cost effective, especially when they charge by the day,
and can't get things right even on the fourth attempt...

~~~
jbob2000
Is there a connection between native speaking language and code quality? Since
computer languages are logically constructed, do people who speak more
logically constructed languages fare better?

I see a lot of over complication in the code that our Indian developers
produce. Lots of copy and pasting code around instead of wrapping in a common
function and calling that. They setup weird data structures when simple arrays
would suffice. Lots of redundant logic. They don't negate if statements, they
use the else block and leave the if blank. It's just weird. It's not even
laziness, there's way lazier solutions to the ones they provide. I'm tempted
to think that Indian languages beget a certain style of thinking that produces
this kind of code.

~~~
um304
Wow! That's a big generalization. Silicon Valley is full of top notch
developers with Indian origin. Similarly, you can find plenty of mediocre non-
Indian developers everywhere. If I've to blame anything, I'd blame lack of
systems, than entire language family.

------
eloisant
The core problem is that companies from US or Europe contracting Indian
agencies do it because of price. It's always more convenient to contract a
local agency, in the same timezone.

For that reason, most Indian companies focus on getting the cheapest price and
do so at the price of quality.

If you want to do quality work, you'll have to hire more expensive developers
and you'll be more expensive. You need to figure out a good positioning
because you'll be more expensive that your local competitor, and less
convenient than firms closer to your clients. Add to that the low quality
image that won't go away until all your competitors start going for high
quality development.

~~~
objectivecdev
I agree with you 100%. I think it is difficult to change the image.

------
avaika
I'm in the project which is currently being transited to the team in Pune,
India. Means I hand over all my stuff to them and quit. They will take care
for the project. Thus my view might be a bit biased (I hope it's not).

I'm just back from 3 weeks trip to their office. Here are my impressions:

* just a few of them (new team is about 40 people) are skilled enough to do the project work

* most of them never heard that people can google errors and check for solutions in the internet (I mean really, how can even a junior come with questions like "I've got an error X. please help me, I don't know what to do")

* they do not dig around. they were told to do X, they will do their best to do X. if it turns out that it obviously will break Y (and it can be seen from the beginning, or something similar might happen) they don't care. They have to do X.

* code quality is not high at all. sometimes they try to fit multiple workarounds to fix some consequences instead of digging around and fixing the root cause

* they stick to their hierarchical structure and rules. if manager told to do X, they will not doubt it for a second, even if it's something I would argue about (however I saw some rare exceptions)

* not all speak good English. some need quite a while to find the right word. * if they will not change something in their workflow, I'm pretty sure they will completely screw the project quite soon after we quit.

This is my experience with new team. In the same time I would like to mention,
that there are some good engineers over there and I had a good talks with them
when I visited there another company for a day there, but not many of them. I
can really feel the lack of qualified people.

PS. I enjoyed the trip a lot (even the kitchen sometimes). Most people in
India are really kind and helpful. I managed to visit some interesting places
and now have some nice pictures :)

------
jasonlfunk
I have experienced working with two different Indian development teams and
both of my experiences were characterized the same:

1) Over-communication to a fault

2) Low code quality

I don't know how can you change my perspective, but I would suggest not trying
to change the perspective of Indian agencies as a whole - but rather why you
are different than the stereotypical Indian agency.

~~~
voltooid
What do you mean by over communication? Do you mean that essential
communication is repeated without additional effect? Or that unnecessary
details are relayed?

~~~
jasonlfunk
Yeah, it's a little hard to explain. Unnecessary details are relayed, very
detailed descriptions of even minor things that were accomplished, etc.

~~~
Chris2048
To expand on this:

detailed descriptions of even minor things; to distract from the fact of very
little being achieved.

Unnecessary details are relayed; implying little comprehension of task meaning
and/or importance.

------
igor_filippov
I worked with only one, the one my partner foolishly chosen before I've joined
him. Issues we faced:

\- Developers were almost completely illiterate when it came to basic things,
like http vs https, using git, encryption vs encoding. That's just something I
wasn't ready for

\- Using old technologies, i.e. Eclipse for Android development when almost
everyone is on Android Studio, having libraries which haven't been maintained
since 2010 as dependencies

\- Communication was horrible, I had to write 10-20 emails before I could get
any answer

~~~
kapilgorve
I was working as a remote developer on frontend. I literally had to explain
what is difference between get and post requests in REST apis to the android
guy. When I checked his profile, he had mentioned he was working from three
years as Android developer. :/

------
NicoJuicy
Have tried a lot of times ( 8 times to be exact), the only one that worked is
now doing his own projects and launches a SAAS. The CEO was involved in every
project. Every project took a very long time though and deadlines were not
met.

Other experience, estimates are wrong, filling in more hours than actually
worked and they always say yes. But what they mean is we can't or don't
understand what your mean and we will stall the project.

~~~
laci27
"they always say yes." OMG this is by FAR the most annoying thing with them.
But I think It's a cultural thing.. They say yes, not because they know how to
actually do it, but rather that they understood what you said (English is a
second language for them so I think they just mean "yes, I understood that
part").

~~~
dcminter
Me: Can you blah blah blah?

Them: Yes

Me: Ok, and would you be able to blah blah blah?

Them: Yes

Me: Great, and do you think that will be ready by blah blah?

Them: Yes

Me: Fantastic. What approach do you intend to use?

Them: Yes

Me: _mutes phone, curses, unmutes phone, goes back to start_

I've occasionally worked with some excellent individuals, but the aggregate
has been poor.

My most recent experience with a team of this type repeatedly involved
requests for documentation at a level of detail where automating the task
would be less effort.

The biggest problems are cultural, but the perception is going to be hard to
overcome.

~~~
ethbro
This has come up on HN and other places. If you want to avoid this issue,
phrase your questions differently (e.g. as non-binary agree/disagree
questions).

I'll let one of our Indian colleagues suggest the best alternative here, as
I'm sure they know more about the relevant Indian cultural points than I.

But even something like "Tell me how you will accomplish X?" or "Do you have
any worries about doing Y?" tend to produce better India-US communication.

~~~
dcminter
I completely agree and these days I follow exactly that strategy, to good
effect. However I think it's still, in general, damaging to general
perception.

Another factor is that most of my encounters with such groups has been while
working for organisations looking for a cheap option. I strongly suspect that
this is common and results in hiring low quality groups with mediocre people -
again tainting popular _perception_.

------
ThomPete
Having worked with Indian companies and for Indian companies the last 20 years
here is my advice.

1) Learn to say 'no' or 'we need to understand this better before we can give
you a quote or a deadline — too often, way-way too often Indian outsourcing
companies oversell their capabilities. Learn to say, 'this can be done, this
can't be done' within the timeframe/budget etc.

2) Increase your prices, get more senior developers (increase their salaries).
For most western companies even a 100 increase in price is still many times
cheaper than what they can get and if you get better developers because you
can pay more you will be able to better meet your deadlines.

3) Invest heavily in proper frontend people. Give them extra training if
needed so they know how to write optimized code. There is a world of
difference between solving the problem and solving it elegantly. All too often
what you get back works but is useless because it's too slow.

4) Hire western project managers. Don't get me wrong I have worked with some
really great Indian managers but understanding the western culture and
expectations and being able to understand western expectations would remove
90% of the confusion that happens today.

5) Did I say, increase your prices and your salaries?

6) Be better at writing PRD's and set expectations, make sure you can meet
those expectations and don't be afraid to push back on what's possible to
deliver early on. The sooner a client knows there will be delays or the sooner
they know their timeline expectations can't be met in time the better. That
allows them to plan accordingly.

7) Did I say, Learn to say 'no' or 'we will have to look some more into this'

Ping me if you want more concrete advice, it's an area I care about a lot
because I worked with Indian companies a lot.

Solving the quality, expectations and honest feedback would increase any
Indian development house directly into a top-tier partner for me.

------
Spooky23
You need to compete and market based on quality and knowledge, by just price.

I have a competitor of yours trying to get a meeting with me. Their pitch is
that I can have 10 programmers at $20/hr each, a 75% savings based on US
programmers!

The problem is I want solutions, not man-hours!

~~~
occultist_throw
What you said reminds me of that old comment: "If one woman takes 9 months to
have a child, how long is it for 9 women?"

------
PaulRobinson
Basically, in my experience, and the experience of others I've spoken to, you
need to do almost exactly the opposite of everything the India dev agency
industry does. The sector as a whole it completely trashed and discredited in
the UK, from what I can see, and if I interview somewhere and they have an
Indian agency on-board somewhere, it's a major red flag that something very,
very bad is probably happening somewhere.

That's because every single Indian dev agency experience I've had, has
resulted in a net negative outcome, sometimes so bad we've thrown away
_everything_ they've touched and started again.

A couple of ideas that might make everything "nicer":

1\. Increase code quality. Commit to it. Understand technical debt and commit
to reducing it. Refactor. Code reviews. Cite and apply industry standard texts
like _Clean Code_ or language-specific texts (e.g. _POODR_ for Ruby). Test
coverage, great documentation, highly readable code: they're not optional any
more.

2\. Go agile and lean. Don't expect BUFD. Realise the client is learning as
they go too.

3\. Don't take specs from a client and develop code that meets them. Develop
the spec _with the customer_. Use BDD properly.

4\. Realise there are many things that go outside the spec. Pre-empt. Don't
wait to be told. Realise that functional requirements are less than 20% of
what is needed to successfully ship a product. There are many things I would
"just expect" a developer to do, but every time I've worked with an Indian dev
agency I got exactly what I asked for, no more, no less, no common sense
applied. Do I really need to tell you the "password" field should be encrypted
at rest, and which crypto scheme to use? No, you should do that because it's
basic common sense, and tell me what crypto you chose, and why...

5\. Say "no" more. Say "I don't know" more. Say "we made a mistake" early when
it's obvious you made a mistake. Don't pretend you/your colleagues are an
"expert" in something if you've read one or two books or developed a couple of
projects: you're still novices until you have 3-5 years experience of doing
that thing. Embrace that, be honest about it, it's OK. Price yourself
accordingly.

6\. The sector tries to compete on price. Try and compete on speed or quality
instead.

------
OliverJones
I had a positive experience a few years back with a small agency located in
Bhubaneswar in Odisha.

Our company started working with them because we needed a mass-production job
done quickly: we needed a whole mess of paper health-care forms converted to
Acrobat (pdf) forms.

We quickly discovered that this particular agency assigned a staff member who
worked to really understand the forms and imagine the workflow of the people
using them. The forms (PDF forms really are programs) we got back were
excellent. They actually made the work of filling them out faster than the old
paper forms.

So we inquired whether they could do other development work for us. That
turned into a good relationship.

We went into the relationship not thinking "how do we get the cheapest
possible programming labor?" but rather "how do we add to our company's
capacity to get all these @##*% forms converted?". We started assigning low-
risk tasks. And, after three years or so they were great colleagues.

We gave them good references and they got other work partly as a result.

We did daily "scrum" calls, early in the morning US time and at the end of
their workday India time. Somebody went to visit them once a year. In other
words, we treated them like colleagues. It's all about people and
relationships.

I believe classic cost-driven "outsourcing" contract deals -- the kind of
stuff that's driven by finance executives -- have contributed to India-based
agencies' struggles with reputation. Would you hire a kid fresh out of
Carnegie Mellon and tell him "you have your job because you're cheaper than
our other developers?" No. So why would you say that to a kid fresh out of an
excellent Indian university?

I believe the Odisha location was helpful, because turnover was lower than it
might have been in Bengaluru or Mumbai.

Plus, Odisha is a really cool place to visit.

That's one story.

~~~
subrat_rout
Being originally from Odisha I am curious to know the name of the company.

------
dirtyaura
Number one thing: highlight the people in your team. Problem with working with
Indian agencies is that the programmers are hidden behind the project
managers. That is not effective way of working in iterative work.

------
matt_s
I see a lot of comments here about increasing code quality, work with your
customer on the spec, don't play the lower price game, etc. These are all
symptoms of a larger systemic, cultural issue. I'm not referring to the
different cultures between regions, I'm talking about the developer culture.

Successful agencies in the west pride themselves on being engineering focused
and treating developers right. Treating them right means they are the
cherished role in the organization, probably amongst the highest paid in the
organization and roles are sought after by junior developers.

A common trend I suspect is cultural in India is that developer roles and most
importantly senior developer roles are not prestigious enough. Titles seem to
matter more and I witnessed many times competent developers are motivated to
'move up' into PM or manager roles either because of prestige or money.

Address this by creating a culture that attracts developers that want to be
senior and grow within the role instead of simply a stopping point on their
way (in their minds) to a CxO position that has the prestige.

If you can create a culture in your company where developers are cherished and
highly paid, you will likely have higher quality as an output. Sure your price
will have to be higher but maybe after a while you can beat your regional
competitors on time too. Make sure this culture is actually in place and
working before adding it to marketing materials.

~~~
rajarshisharma
Wow, this is so accurate. I used to do a lot tech interviews in my previous
organisation and 90% of the time, would wind up with a person whose near
future goal is to be a manager or who would boast of having managed x number
of people, apparently that profile being of a more prestige value than someone
who purely codes. In due of course of that experience, I could also derive
that this attitude kind of stems from difference in our approach to getting in
computer science itself.. most folks who get into a particular engineering
stream (computer science/ electronics/ IT etc.) in India don't do it out of an
interest in that particular stream but rather out of the prestige that the
stream has because people with higher grades in the engineering entrance exams
are "supposed to" join these streams rather than mechanical or chemical
streams, in which they might have more interest. This is again associated with
the employment opportunities and social standing offered by that employment in
a developing economy like India.

------
JulianRaphael
I guess most comments in this thread already show you the general perception
you'll have to deal with. Here's my take at the three key issues as someone
with deep roots in India:

First of all, excel at communications with potential and existing clients.
Have at least one person on the team to speak English on a native level. In
your description, there are already quite a few mistakes and when freelancers
and agencies apply to my gigs, I filter the initial messages out brutally. I
don't even look at applications that feature spelling and grammatical mistakes
and miss details I specifically asked for. Also, have a person on the team who
has been exposed to the culture(s) of the region you want to sell to the most,
in order to be able to e.g. say "no" more often and to also admit when you
messed up.

Second, never approach a client with an opening line like: "Trust me Sir we
are best developers we will do best work and give you cheapest price." You
have no idea how many of these I get on a daily basis. You simply don't get
the best people at the cheapest price. Define your target group and either
sell yourself as a cheap, low-quality sweatshop or continuously invest in
great people and training and sell yourself as one of the few exceptional
agencies in India that actually delivers great quality.

Third, stop chasing short term profits. This is the worst aspect of doing
business in India - most freelancers and agencies rather deliver bad work and
get some money, then really putting hard work into in and building great
relationships that will create lasting value.

Happy to give you more feedback, just ping me via the e-mail in my profile.

------
saran945
I am from India, there is no doubt that devs/IT professionals generally are
highly talented but

\- The whole education system is totally messed up here, Things are changing
slowly. the professors/lectures have no idea what is going on from rest of the
world. the students are preparing for exams only in the last day. the exams
are purely memory based. I did "Rote learning" during my school days.

\- The interview process is highly questionable in most IT shops. Even Bill
Gates can't get job here. (hint: its memory based interview process, it can be
easily cleared by students who are well on it)

\- There are lot of politics going on any IT firm (thats the worst thing)

\- Most of the CEO do not listen. you have to follow their instructions.

\- It was 2002, I applied my first job, friends who referred me for the job
told me to change my resume to fit the requirement, instead of including my
real skill set.

\- It was 2005, my first interview in US, An interviewer who called me "how
much US experience you have?" I told her "I do not have any US experience", I
got lot of anger, what is going here?, I am doing coding for few years, now it
has no value? latter I realized the purpose of the question.

\- 90% of the students who are coming to IT industry are from poor/middle
class families, they have lot of focus to improving their family, standards of
life, unfortunately their skills/focus are not properly unleashed.

\- Most IT people in India spending more time on traffic rather than coding.

\- the list goes on. I do not see any use of listing/discussing these here.

------
securingsincity
it's a little different but when I look at my experience with developers from
Xteam or TopTal (very positive experiences) vs other agencies (some in India)
that I've worked with I see a set of clear differences. One is quality in
code. I'm very rarely having to correct work, whereas other agencies we will
receive a project and it often way off base. The work might meet the spec but
not of quality and certainly can't be built upon. In another post, you mention
team augmentation and I think that is a great idea. I would also echo concerns
about autonomy and ability to innovate. Again with X-teamers/TopTal devs they
usually want to help drive technology decisions and want to help to own a
project. They then build trust by executing successfully on those ideas. I
think if you differentiate on quality, augmenting teams, and autonomy, you
will be able to rise above stereotypes that have been built up. That likely
means charging more and spending more time screening potential hires. Smart
companies will recognize that it's worth paying more so they don't have to pay
several times over to fix what was done by a lower quality team.

------
tmbsundar
>> How do we work on changing customer's perspective?

What perspective are you trying to change here? This question is broad.

Rather if you are more specific and give one or two broad examples of what
exactly happened vs what was expected by your clients and how to address them
etc., you might get more useful answers.

Remember Indian IT companies vary from small boutique shops to mid-size to
giants like Tatas. Company culture/ operating practices vary based on size and
skill base.

The industry is quite mature and you may want to provide a little bit more
information about your size/ context /problems faced, to get specific answers
or recommendations.

------
lucozade
I've done a lot of work with Indian development teams and agencies as a client
in both the US and the UK.

I've had varied levels of success but the most consistently successful model
has been a leverage model. By this I mean that there is one person in the
agency whose primary (often sole) job is to manage the communication with the
client. This person is representing the customer to the development team. The
key skill that this person needs is that they are familiar with and can
navigate the culture of the client as well as the culture of the development
agency.

For Indian teams this usually has been someone Indian who has worked for a
number of years in the US, the UK or Aus but it doesn't have to be. Note, I
have generally worked for US or UK companies so YMMV.

Ideally, the go between is physically located with the client. This really
helps in the US as the timezone headaches become an internal agency issue to
deal with. If they're not co-located with the client then this can still work
but the go between has to be really, really good.

------
jpasmore
I've worked with two companies Blue Star Infotech and Hubspire (some of team
in the USA including CEO).

My experience is that given clear instruction they deliver against those. We
just had call this morning on commenting among other things. In any case,
Hubspire has been a valuable resource. Don't believe there are tremendous cost
savings though -- more about not finding resource in NYC.

------
sitepodmatt
I taught a dozen or so as part of our outsourcing years ago at <omit>
Consultancy in Vashi Mumbai, all except one turned out to be useless (this one
guy was awesome though, I always wonder what happened to him against useless
peers), and these were apparently the cream of the crop. All stereotypes
turned out to be true, shit code, slow progress, no straight answers, record
high hours recorded, frustration with the loose neck and yes man responses,in
end outsourcing was canned. Hospitality was great though, nice people,
musuems, awesome food, kingfishers, trips to Goa, Id do again if against a
more generous expense package.

------
maxxxxx
From the US the time difference is a major problem. You can never discuss
anything during normal work hours and any issue will have a one day
turnaround. Or you stay up late all the time and then it takes over your
personal life. We have some devs now in Costa Rica which is much easier to
manage because you can discuss things on the phone during the day.

~~~
desaiguddu
I agree with most of the comments. Clients & development teams can manage the
time difference diligently -

a.) Picking good Project management tools (We use BaseCamp + Wunderlist, Asana
+ Skype, Slack + Trello, Jira + Skype)

b.) Most of the time we required Standup calls with project owner to discuss
status & work ahead

c.) Proper documentation & project planning reduces time spent on phone calls
& constant bugging

d.) Slack is considered to be distraction to your productive hours

~~~
maxxxxx
This is fine and good but you are creating a lot of process to work around a
fundamental problem. Direct face to face communication during working hours is
hard to beat.

------
saluki
I've worked on two projects this year originally developed by developers from
India.

These projects have been an ongoing effort to upgrade, resolve bugs and add
new features.

The 'legacy' code just causes ongoing problems.

The main issue is everything is overly complex. They use 10x the amount of
code that is needed for everything.

They also attack problems in really complex ways.

And they like to create really complex functions that are multi-use instead of
clean functions that meet a specific purpose. It's not even really code-reuse
or modular as they will pass a value to a function and then run it through a
myriad of if statements to figure out what model it is and what should be done
with it.

They also don't include much if any error checking, checking for objects
before using them, etc so if anything unexpected happens a fatal error occurs.

I have contacted the original development shop, and contracted out some
revisions to them. They do have one top notch guy, but he hands off work to
other developers that aren't as talented, that's were the trouble creeps in.

To change perspective I would focus on writing cleaner code that is more
bulletproof.

------
scorcher
My view is that its hard to form a generalised opinion on a entire sector.
Especially when that sector is in a country with 1.3 billion people.

------
intellectronica
Focus on something in demand and sell yourself as experts in it. The problem
of many agencies is that they offer to do everything and anything and because
of that appear desperate and not serious. When you're one of the best in a
specific area it's much easier to sell your services, and also easier to
expand your focus later when you're established and recognised.

------
docmovies
I can only speak from my own individual experience with one such company
(Readybytes). It was, and still is - great. I believe it all sums up to the
personality and leadership of the CEO, which in this case assumes total
responsibility and demands high dedication from his employees, which he
personally picks one by one. My projects are for PHP web applications and we
continue to develop it together. By "together" I don't mean it's a
partnership, but that the ideas come many times from the developers
themselves. I find it enriching. I would also suggest anyone who wants to work
with an agency abroad on a large scale project to simply go there, meet the
people, sit and work with them in the same room, dine together, participate in
social events etc. Not only does it create bonds, but it improves the
communication at all levels for the benefit of all sides

------
taude
I'm convinced there are schools over there that print Masters degrees in
computer science with only 6 weeks of training. I'm only half joking.

------
sanjiv1994
I am working in a Startup, we have outsourced some jobs to third party team. I
can’t tell you how horrible Code they write. Just to give a context they will
store values in JSON inside the DB, just to lower the effort of converting
them later

I totally agree that the quality of work is way to low. I think that it’s up
to the developer how well they write the code and develop themselves nothing
to do with what majors they had in School. It’s all about handling the
minutest details well and this is what differentiates a good Dev. It’s like
carefully selecting the proper screws while building a drawer even though the
screws might not be visible to the user.

~~~
tachyons
I am not sure about your context, but even the relational databases like
postgresql support json as the first class citizen because sometimes you have
to store non relational data into your db

------
um304
If I were you, I'd work on setting a good image of my own self, or of my
agency, instead of attempting to change image of an entire country.

I'd work hard to sharpen my skills. I'd find some way so let the world know
about my skills. It could be through blogging, or through contributing in open
source software, or any other way. When looking for clients, I'd find good
clients who appreciate quality work (not every client cares about quality and
not price). I'd work hard to build good work relationships with those clients.
One good relationship goes a long way.

------
OliverT
In my last company we were burned by these "IT firms".

It is basically impossible to get any meaningful work done unless you have a
person on site with the dev team.

You also need to write very very very detailed design docs and feature
requirements.

If you absolutely must use services of these companies, try to get them work
on peripheral features, instead of core application logic. You'll be
minimizing long term technical debt damage risk to the project that way.

------
truthseeker1212
Nobody gives a damn about wipro/tcs/infosys. India's best developers and
designers are in a company called Directi. They compete w/ likes of google to
get the best talent, pay them huge and groom talent. Most of their ex
employees either land in Google or Facebook. Look it up for yourself.

They are not a service based company, so this is not a cheap plug promoting
them.

------
OnlineCourage
India is a big place. To me that is like saying, "what are your views on
development agencies based in the world?"

~~~
koliber
That is true. However, there are cultural differences in different parts of
the world. These differences affect in interaction between groups of people
that are not from the same part of the world.

I see this question asking about what it's like working with India-based dev
agencies, taking into consideration cultural differences.

It would be just as valid if asked about other parts of the world.

------
jfaucett
I kind of get what you're saying. I live and work in Germany where there is
the stereotype of a very high standard that we carry around on all our
products i.e. there are companies that would not do business with us if they
did not get the "Made in Germany" stamp from our exported goods/services. This
is an image - whether correct or not - that was acquired over a long period of
time where many companies (BMW, Bosch, Siemens, BASF, Bayer, etc) provided
high quality goods/services and built up an international image.

Anyway, this is a positive perspective customers have, and I admittedly
benefit from it when doing business. In a lot of ways, the opposite can be
said in terms of stereotypes for India, and so that's tough and I suppose what
your question is about.

The thing is, even if perhaps I get an initial project in part due to a
positive stereotype, that customer will not recommend me or use me again if I
don't perform excellently for him i.e. making him better off through the
interaction.

So that's what I focus on. And if you do that, in my experience, stereotypes
won't matter at all. You won't be an "Indian Agency" but "Insert your company
name" who does great work.

Some things I do to keep/maintain customers are: having very high standards of
quality i.e. if a customer uses me I want them to remember me as the best
contractor they ever used, they should be impressed at how clean/well-
executed/designed/on-time the software delivery was. I also keep things
professional, succinct and timely, and goal oriented and expect the same from
the get go. Also if anything is not clear to me I make sure we clarify it and
get on the same page immediately. Clients and you both hate wasted
time/effort.

Finally, on the personal side I try to constantly self-improve and hone my
areas of expertise so I can get things done more efficiently and be quicker on
my feet and more creative/innovative with my solutions for customers. This is
actually really big. Most (good) clients really really want someone who can
think for themselves, is creative, and takes a problem and brings back an
amazing solution. This can be difficult, I know, since a lot of clients won't
give you enough information or even attempt to think their own problems
through, etc. But with some you can help (being upfront, asking well-formed
precise questions), and with the worser ones you can usually recognize them
very quickly even in the initial project discussion and my advice is always
walk away.

If you do these things, you will have absolutely no problems finding customers
who love you and recommend you to everyone regardless of where you come from
(at least IMH experience).

Best of luck.

~~~
desaiguddu
This is by far the best advice I have received. Thank you.

------
amorphid
How can you show someone you are good mobile developers? I would focus on
communicating how have done amazing work for previous customers, and try to
earn referral business. Also, do amazing work!

~~~
desaiguddu
That's exactly we have done so far. 80% of our business is either referral
customer or repeat customer.

10 to 20% of times we have failed miserably to satisfy customers needs.

~~~
amorphid
Maybe I'm wrong, but a 10% to 20% failure rate could be pretty good. A lot of
projects were never going to be successful no matter who tried to implement
them. If you please everyone, you're probably doing easy work.

------
brainwipe
I've worked with 4 different ones now (in Bangalore and New Delhi).

You want fixed price, fixed DETAILED spec, fixed timelines and assume that you
don't want to maintain the product afterwards. That's worked well when we've
had quant calculators that just need to done one thing. Expect there to be a
high management cost on your side.

Outside that, my experience has been pretty terrible and it comes down to a
cultural desire to be positive all the time. Saying Yes all the time is a
disaster, especially when dealing with non-technical business people. I'll
give a couple of examples:

1\. I've tech-Lead a large group (40+ but I interviewed more) of offshorers,
the manager on the Bangalore side helped the devs through their coding
interviews by recording my questions, working out the answers and handing them
round. When I realised what was happening, I invented easy questions off the
cuff and found the interviewees (on the other end of the phone) would pause
and then give an answer they couldn't explain. I could even hear one guy
typing in the question as I asked it. When we approached the Bangalore manager
to sit in on the interviews, he said that he didn't see a problem, claiming
over and over that he'd chosen the very best developers.

The CEO still went with the agency and I found that the few good developers
that agency had moved on because they were offered more elsewhere, leaving
with the knowledge I'd trained them with.

2\. We expanded our team by bringing in an offshore team. The Indian provider
sent 6 to 8 (can't remember) "senior c# .NET developers" over for us to train
on the system. One of the developers didn't know how to open a solution in
Visual Studio and asked me where the "Run" button was. When I showed him the
CV that had been sent over for him, he agreed that it was his and confirmed
that he had 6 years .NET experience. How you can code in any framework for 6
years and not know how to press F5 is staggering (this was back in the day
when VS was your only choice).

None of the companies or managers I've worked with before would ever go
offshore (outside of Europe) again.

> How do we work on changing customer's perspective?

A lot of this is cultural. What appears to be of acceptable quality to an
Indian agency isn't OK where I am in the UK. Also, there needs to be balance
between being positive while at the same time realistic. "Bending the truth"
is part of the back-and-forth of Indian business but in Europe (and especially
in software development), that's a disaster.

The best you can do is act more like a Western business and how their
perspective changes of your single company.

------
paulgrimes1
Which customers? What perspective? What platforms?

You'll need to be clearer in what you're asking. Are you asking for opinions,
or advice?

------
dismalpedigree
hello and thank you for your comments from the America but our code top made
cheap prices super communicate.

------
GrumpyNl
Stay away from it, other then tax advantages you should stay away from it.
Nothing but horrible experiences.

~~~
objectivecdev
I agree, but how to improve it? What issues did you face with them? It would
be interesting to read your experience.

~~~
GrumpyNl
First communication, the mean no but say yes. All meetings has to be done in
English, not a big deal but for a dutch company a lot of extra effort is
needed. Their lack of skills, they say they are senior, you find out they are
on learning level, hidden behind two better programmers. Time difference
always bites you in the back. If you just wanna hire 10 or 15, hire 5 good
people in your own country. If you need more then a hundred hands and can
afford to place some people over there, give it a try.

------
Cadabrum
Does your agency have any public GIT repository? To be more specific.

~~~
desaiguddu
yes, we do have public git repo.

We also organize a monthly developer conference and emphasis on development
practices + development tools on iOS.

------
kapauldo
Low quality, mediocre delivery to spec, frustrating communication, but cheap.

