* The Business of Software

A former community discussing the business of software, from the smallest shareware operation to Microsoft. A part of Joel on Software.

We're closed, folks!


» Business of Software FAQ
» The Business of Software Conference (held every fall, usually in Boston)
» Forum guidelines (Please read before posting!)


Andy Brice
Successful Software

Doug Nebeker ("Doug")

Jonathan Matthews
Creator of DeepTrawl, CloudTrawl, and LeapDoc

Nicholas Hebb
BreezeTree Software

Bob Walsh
host, Startup Success Podcast author of The Web Startup Success Guide and Micro-ISV: From Vision To Reality

Patrick McKenzie
Bingo Card Creator

Becoming a Great Programmer from the other side of the world?

We know how it goes. "It's hard to find good contractors online". "There is no good software developer who has no job" so "There's no reason to be threatened by programming outsourcing".

Now the funny thing with me is, I am on the OTHER SIDE OF THE COIN.

You see I live in 'a poor part' in South East Asia. What does this mean? No Software Related Companies with actual vision. Only Outsourcing companies where my co-workers will be non-interested and barely competent 'developers' who have been pushed by their mothers for the $$$.

I am a programmer driven by passion. I learned programming because I wanted to make games, and it stated there. I can rip through a recursive algorithm (not in seconds, but still) and simply love reading and writing code.

What would be ideal in my mind? I would like to have the sort of 'hacker' and programmer ecosystem available in places like Silicon Valley, and give a helping hand in startups and the like. In the long run I want to work on companies like StackExchange and Google. Maybe try game companies like Square too.

But that's the problem. I'm very limited by my position. I have done what ever I could to learn as much as possible (taking online computer classes, along with code, so far as COPYING the actual CS Curriculum and taking those classes) but I feel that I'm in a sort of limbo. I think it would be the ideal position for me to work in a company and meet an awesome guy who becomes my sort-of 'mentor'. But no such occurrence like that will likely happen.

Any tips for a budding, passionate limited-by-position developer like me?
Anony Anonymous Send private email
Saturday, December 07, 2013
>  I would like to have the sort of 'hacker' and programmer ecosystem available in places like Silicon Valley,

If you think you have it particularly bad because of $East_Asia be assured that here in Germany it's not better.  We may have one hub (Berlin) where there are a few jobs with real hack value. But the rest is dead boring .NET and Java jobs where you'd rather stab out your eyes with a rusty nail than go to work.

That's why I decided to go on my own and I started selling my  own software. (Tried freelancing before ... it turned out to be just like said shit jobs only with less social security benefits).

If you should ever decide to go that route: Soft skills like marketing, etc. are far more important for your success than your technical skills. But still I'm the master over every technical decision and can implement some neat stuff - something I wouldn't be able to do with a job/freelancing position.

If you want the 100% just-hack experience you better move to a tech hub and get a job with an awesome company. But there are only few real tech hubs around the world and even in those tech hubs there are maybe 2 or 3 companies (if at all) that let you live the hacker dream.
Jeremy Morassi Send private email
Saturday, December 07, 2013
Look out for startup communities where you are and maybe follow people like Dave McClure who does his 500 Startups #GOAP tours all over the place.

What you describe is not unique to your area. It is the same everywhere. If you really want to be in charge of your own destiny, you really have to start your own business.
Scorpio Send private email
Saturday, December 07, 2013
You may consider participating in various online and offline events hosted by big companies such as Google and Facebook. Even if you won't get noticed (initially), you will get a lot of practice and grow your network.

For example, Google held a hackathon in our city (which is in Siberia, mind you) just last weekend:


and Facebook has a Programming Challenge running 24x7:

Dmitry Leskov Send private email
Saturday, December 07, 2013
" Soft skills like marketing, etc. are far more important for your success than your technical skills."

If I could upvote that a hundred times...  I was in my 30's before I understood that computers and software have no value, except what they deliver to people.  Which means communicating that value to people is highest priority.

Being on your own definitely requires soft skills, and being in a big techie company also requires them if you want to be involved with meetings where architecture and design take place.  The only people that don't need soft skills are programmers that are given a low-level spec and told to implement it.  That's not a fun place to be.
Doug Send private email
Saturday, December 07, 2013
We know how it goes. "It's hard to find good contractors online". "There is no good software developer who has no job" so "There's no reason to be threatened by programming outsourcing".

What is the view regarding the above statements over where you are? No politically correct propaganda please.
cn Send private email
Saturday, December 07, 2013
Create products people want and sell them for a price they are willing to pay.

It's as simple as that.

Your main challenge will probably be arranging to have credit card purchases credited to a bank account that allows you to access it in your local currency.
Scott Send private email
Saturday, December 07, 2013
BTW, I've purchased at least two software products (productivity apps) this last year made by one-man operations in India which wrote something that was exactly what I needed, saving me the trouble of writing it. It's finally happening, thank goodness, Indians are becoming aware they don't have to go work for some outsourcing shop run by a technically incompetent management team.

I won't name those products, but I will mention Squad, which has now grown to a 15 person company running out of Who-Knows-Where, Mexico and has developed one of the hottest and most technical game/simulations in years - Kerbal Space Program. This program is very well regarded and isn't even out of alpha yet.
Scott Send private email
Saturday, December 07, 2013
Actually, the simple matter is the jobs tend to go where there is jobs and industry (who would have thought!).

Due to much outsourcing and little manufacturing in north america, want to bet who writing and maintaining some software for those factory workers? Why of course developers living in  that area!

Now that all those factory workers have jobs , and go to the local dentist, want to make a bet where the job is for maintain that dental software? Again right in that area!

I mean you think there are jobs in Detroit for software developers?  Last time I check there is a GRAND TOTAL of 3 Starbucks in the WHOLE city! (I live in Edmonton and I can see 3 starbucks out my window!!! – and we are a cold northern city!

You purchase a beautiful two story nice brick house for $10,000 in the city Detroit. (likely less than a nice house in your area!). Even at that low cost no one can afford that house due to no jobs!

So you think software developers would FLOCK to those great two story huge brick houses for $10,000. Well, guess what? There are no jobs for software developers either in that area!

The simple matter is most software is used by business. And jobs for such software are thus an result of having local industry. Without that industry then few software jobs exist. Few exceptions (such as game and entertainment software) exist, but for the most part software jobs are found where industry is locating to.

Given that industry and manufacturing re-locating to places southeast Asia then that ALSO means that's where you find jobs for developing and maintaining software for that industry.

You not find any jobs for software developers building systems to run a print shop or some fabrication company in Detroit for say creating packaging boxes for consumer products.

Remember, most software is purchased by business to HELP them get their job done.  Just like someone purchases a drill to make holes in wood, they purchase that drill since the cost of the drill is LESS than the cost of having a human drill those holes without the tool. Most software is purchased for EXACTLY the same concept.

So without industry and business, then there is no need to purchase drills or hire software developers to improve business processes.

Since most industry and jobs of the world are leaving places like Detroit and moving to southeast Asia, it seems to me you are in a better location then most to find work in the software industry.

There are certainly products in our industry that transcend geo location, but MOST work in our software industry is driven by the existence of local industry.

You being in southeast Asia thus suggests you are in one of the best places to find work in our industry. In fact most places in North America are Still seeing industry leaving to places like where you live. The result is less jobs in those area where industry leaves and MORE jobs where that industry is going.

So my tip is to find work in your local industry as a developer.  I often lean by reading and going on line.

However NOTHING makes you a real developer by WORKING on real projects and doing real work that people are paying you for. 

I can practice the game of tennis all I want. To become a great player I have to join a league and start playing against others. Be it the heated battle on the tennis court, or that of working on software that business are  paying you is near tops in how you hone your skills.

And while you improve your skills in your battle area you be talking to other vendors, going to industry conferences and meeting other developers and business people. This open doors to all kinds of opportunities for you. These opportunites don't exist if you stay at home and read a book or write software.

So jump into this industry.  The idea that you need to go work for Google or whatever right away might sound cool, but the practical matter is you are in an better geographical location then most due to that's where much of the world's industry is moving to.

You are likely in a better location then most places – including North America.

Best regards,

Albert D. Kallal
Edmonton, Alberta Canada
Albert D. Kallal Send private email
Sunday, December 08, 2013
+1 to Albert
What is interesting about all of this is that I remember clearly in the early 90s, the main reason given for sending manufacturing jobs overseas was to free Americans to do value added work such as software programming!
cn Send private email
Sunday, December 08, 2013
My understanding of OP's question is "How can I become a great programmer despite living in a programming wasteland?" (i.e.: where can I get mentoring, code review, peers to compare notes...)

So far the answers are:
1. Learn soft skills like sales and marketing
2. Network with local companies including start-ups
3. Attend online/offline networking events
4. Create your own start up and develop your own products

Maybe I didn't understand OP's question properly, but so far I get the impression that no one has even begun to address the question.
Sylvain Galibert Send private email
Sunday, December 08, 2013
Thank you all for your amazing replies so far.

I actually understand how the outsourcing of jobs make it a good place to have work on. However, its the working conditions that suck, coworkers who was zapped into working for $$$, insane overtime hours, and the like. Perhaps this will be better in the future, but this is how it stands now. Oh, I almost forgot, the most favored language here is Visual Basic.

I'll try and assess each of the things that you guys have pointed out, using the nice compilation by @Silvain
1. Learn soft skills like sales and marketing
  -  I try my best to do this. I manage a blog, and my articles are generally well received (they are quite technical in nature (programming!), but the popularity is that I manage to explain it simply). My articles are also click-bait (you know, 10 things zzz, or Why you fail at zzz)

2. Network with local companies including start-ups
    - No such thing. I know, I did my homework.

3. Attend online/offline networking events
    - I join game jams, but that's about it. I might take a look into researching more :)

4. Create your own start up and develop your own products
  - I'd love to, but Joel writes it himself: Find a partner. That is highly unlikely. But if there's a will there's a way, and I can probably push myself do to it alone. Gotta find a niche though.

I also like Sylvain's other points:
 Mentoring - as you might have imagined, no offline mentors. But I did manage to find mentors online, and let me tell you, they catapulted my productivity.
 Code Review - Mentors, and CodeReview in Stackexchange!
 Peers - Programming forum.
Anony Anonymous Send private email
Sunday, December 08, 2013
>I'd love to, but Joel writes it himself: Find a partner.

There are advantages and disadvantages to having a partner. Plenty of people have succeeded as solo founders.

One way to get the job you want is to create it yourself. It isn't easy. But if you have passion, work hard and are prepared to learn new skills (e.g. online marketing), it is possible.
Andy Brice Send private email
Sunday, December 08, 2013
If you want to concentrate on programming you could join (or start your own) open source project to demonstrate (and improve) your skills.
Andy Brice Send private email
Sunday, December 08, 2013
Just as a throwaway point; Malaysia has it's own Silicon Valley...


If the "poor part" means Indonesia you already speak 80% of the language and your English is OK anyway.

Reluctantlyregistered Send private email
Tuesday, December 10, 2013

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz