Forums  > Software  > Outsourcing development/research  
     
Page 1 of 1
Display using:  

Strange


Total Posts: 1578
Joined: Jun 2004
 
Posted: 2019-03-15 15:39
Had a long drive this morning so got to think about all the projects I need to get done and all the time that I do not have.

Has anyone here successfully figured out a way to outsource work?
Did you do it locally (students? consultants?) or globally (remote to Nth world countries?)?
How did you find these people (upwork, git) and how did you verify that they know their shit?
How did you structure it - per project, permanent partnership?
How did you manage the process?

“My dear, here we must run as fast as we can, just to stay in place. And if you wish to go anywhere you must run twice as fast as that.”

Maggette


Total Posts: 1151
Joined: Jun 2007
 
Posted: 2019-03-15 16:37
"Has anyone here successfully figured out a way to outsource work? "
I din't. But a guy I trust did and we had a long talk about it. He did it twice with the same shop.

"Did you do it locally (students? consultants?) or globally (remote to Nth world countries?)?"
Belarus. There are a couple of small companies there (5-30 developers) who concentrate on a certain technology stack. In the described case it was .NET stuff.

"How did you find these people (upwork, git) and how did you verify that they know their shit?"
You will be suprised...the guys contacted him via XING (linkedin clone for the DACH region).

"How did you structure it - per project, permanent partnership?"
Painfull. A specification. A lot of skype/e-mail as specification. Fixed price. Relative small project first to check them out. A bigger as a follow up. But both were kind of technical, classical plumbing.

"How did you manage the process?"
He was allowed to join the stand ups via slack or skype. Regular phone calls/ email/video conferences. They hade a sharepoint or something and confluence where he had access.

It went well. But he said it is only for a specific type of projects. Something that you can specify very well and encapsulate.

They are top technology wise, but probably are not interested to gain domain knowledge (which IMHO is often very important to make the right decissions). Lot's of tests, good structured code.


Edit: that is probably the problem, to be cost effective you have to put in a lot of work before (specification, dscuss the architecture and design with them etc.). I think there is a thin line where if you after you done all this, the rest could be done by yourself.

Ich kam hierher und sah dich und deine Leute lächeln, und sagte mir: Maggette, scheiss auf den small talk, lass lieber deine Fäuste sprechen...

Strange


Total Posts: 1578
Joined: Jun 2004
 
Posted: 2019-03-16 17:18
Thanks! Let me digest these points a little.

“My dear, here we must run as fast as we can, just to stay in place. And if you wish to go anywhere you must run twice as fast as that.”

contango_and_cash


Total Posts: 110
Joined: Sep 2015
 
Posted: 2019-03-29 15:28
@Strange my 2p is that it depends on your complexity.

I have had a lot of luck with upwork for "sophisticated" data entry (not just lazy ocr). some intuition reqd.

For coding, I would think it would be a somewhat challenging and iterative process of smaller tasks until you know they can manage the bigger lift.

I'd be curious to know what you find and I'm happy to talk further about my experiences.

Prices have been very agreeable for someone living in US (2-3$/h).

finanzmaster


Total Posts: 168
Joined: Feb 2011
 
Posted: 2019-06-08 17:29
My 2c from both sides of the barricades

1) Me as project owner:

I searched globally in Russian-speaking countries (first of all on dou.ua - a popular forum of Ukraine developers).
I looked for motivated juniors, expecting there shall be a lot of them because the IT-Branch in Ukraine is an (only) branch with high salaries.
However, only employees with (at least some) experience are really demanded. So I expected there will be a lot of those, who want to gain the experience.
But surprisingly there were very few candidates.

I paid them monthly fixum, with which one could survive* (in Ukraine) and suggested a share in project.
*don't blame me to be greedy. I, myself, worked this way, as I was a webdeveloper in Russia (and dotCom crisis came).

To sum up: it was a long but generally unsuccessful story.
Not only because these guys (and gals) did not really believe in my project and wanted to change to a higher salary asap, but also because they needed more guidance than I could provide: they could write code but had absolutely no knowledge about finance (e.g. what is an OHLC time series, let alone Monte-Carlo Simulation or Option price).


---------------------------

2. Me as a contractor:

a. My customers gave project-ads on w....com and quantnet.com, I responded to these ads.

b. My CV and publications, as well as online quantitative toolbox in my blog were a sufficient evidence for them.

c. For a small project it was a fix price, for the big an hourly rate (after each stage I briefly but clearly summarized my time expenditures).

d. Since I had expertise both in technical and domain area, occasional skype communications were fully sufficient to manage the process.

www.yetanotherquant.com - Knowledge rather than Hope: A Book for Retail Investors and Mathematical Finance Students

henderson


Total Posts: 178
Joined: Jul 2007
 
Posted: 2019-06-09 17:35
I failed many times at this and thru failure found a way that works for me.

Following the 3P's:
People - Process - Product

People:

I found Github and former co-workers to be the sweet spot. TLDR; Upwork was a waste of time. A mix of former co-workers and Github did well for me. A mix of them is optimal as former co-workers know me well enough to make decisions on the fly on my behalf should someone get stuck and I'm away. There is a diverse mixture of per hour pay per development resource depending on quality, ability to get shit done, etc. All communication happens on Zoom (pairing, Agile ceremonies, etc), Slack (quick questions, coding discussions, etc), or code reviews/email exchanges for code or deployment related. Minor side note: dealing with time zones and languages is hard on a team so it may make sense to try to condense the time zone and languages as much as possible.

Upwork:
* Massive time sink
* Poor talent
* Hard to verify developers backgrounds
Github:
* Find people with interesting projects thru searches
* Kick off chats and explore working together

Process:

Daily stand-ups with written stand-ups if a member can't make it. Timesheets submitted by end of day (EOD) on Friday. Version control system (VCS) commits are tracked each week via GitPrime, https://www.gitprime.com/. Sprints processes (grooming, planning, retrospectives, demo, etc) happen every 2 weeks. The teams are very effective at calling out roadblocks or the need to educate other members instead of every dev for themselves. The codebase is a monolithic repository that is several years old with many compilation targets. Code reviews happen on all changes, I am tagged on all of them but am optional which lets me check the email filter and search should I have questions about how work is occurring.

Product:

Not discussing specifics but in general is very well defined in terms of the mission. There is a decent forward looking roadmap for 1 month, 3 months, 6 months, and a year each with expected change as we move towards the targets.

Creepy Factor:

If you find a git repository with some solid development work done to it, you can scrape the committers email addresses via the command:

`git log --format='%aN <%aE>' | awk '{arr[$0]++} END{for (i in arr){print arr[i], i;}}' | sort -rn | cut -d\ -f2-`

My 2 cents with some tangents thrown in for bad form. #godspeed
Previous Thread :: Next Thread 
Page 1 of 1