Dev Watch

Blog archive

Programmers Make Big Bucks on Wall Street, but at What Cost?

When we last left our friend Sergey Aleynikov, the Wall Street programmer had been convicted of stealing trade secrets from Goldman Sachs and sentenced to prison in 2010.

Aleynikov was involved in the ultra-secret world of high-frequency trading (HFT), where programmers build the lowest-latency systems in the world to execute market trades milliseconds before competitors, making untold millions of dollars with no human intervention whatsoever. He was convicted of stealing HFT code en route to a new job at a rival trading house.

I came across the case while examining "What Do the Highest-Paid Programmers Make?" It was revealed during the trial that Aleynikov was paid $400,000 per year by Goldman Sachs Group Inc., and the competitor, Teza Technologies LLC, was going to triple that salary. Getting $1.2 million per year to type computer code shows just how high the stakes are in the HFT game -- a game none of the players want to discuss at all. The courtroom was even closed so as not to divulge trade secrets during testimony.

Turns out, Aleynikov's conviction was overturned in appeals court in 2012 after he served about a year in prison.

Turns out, he was re-arrested later that year, and -- according to Wikipedia -- the government changed the laws to ensure what Aleynikov did was more of a convictable offense, as spelled out in the "Theft of Trade Secrets Clarification Act of 2012."

All of which serves to point out a disturbing trend of the government cracking down on programmers who take their employers' code or intellectual property with them when they change jobs, as reported by Bloomberg last week in an extensive article titled "Wall Street Techs Take Secrets to Next Job at Their Peril."

Used to be, such disputes were settled in negotiations or even civil suits. Now, you can go to prison. Which might happen to Kang Gao, recently arrested while leaving a $21 billion quantitative hedge fund to join a competitor. Sound familiar? Bloomberg reported:

Gao is the fourth Wall Street analyst or programmer to be ensnared in a crackdown by the D.A., Cyrus Vance Jr., on intellectual property theft from financial firms. His decision to charge Gao, former Goldman Sachs Group Inc. programmer Sergey Aleynikov and ex-employees of the Dutch firm Flow Traders BV, signals a willingness to criminalize financial industry disputes formerly relegated to contract litigation.

So, yeah, go for the big bucks on Wall Street. Just weigh the price you might have to pay if you try to cross one of those firms and leverage your insider knowledge with another employer. These big boys supply a nice gravy train to the "one-percenters" and they don't want to share the multi-billion-dollar flow with anyone. More from Bloomberg:

The prosecutions come as Wall Street is increasingly protective of intellectual property, including trading models and software code, which have become more valuable as firms seek a millisecond advantage over rivals through strategies including high-frequency trading.

Sure, I understand that the code you create belongs to your employer, not you, and employers have a right to protect their intellectual property. But I'm wondering just what that implies, nowadays. Of course taking full programs or even lines of code with you isn't legal and should be punishable.

But it seems to me this crackdown could be the crest of a slippery slope. With the aggressive new stance on the part of Wall Street firms and the government, will the line blur about what constitutes intellectual property? Will you be allowed to jump ship and take your knowledge with you? If you thought of a great idea behind a successful algorithm, will you be unable to duplicate your work from memory at a new firm? Will you be able to create brand-new programs that work similarly to those at a prior employer? Will you be able to use new esoteric skills you learned on a previous job? Just where will the line be drawn?

The Aleynikov case might supply some clarification. He's still awaiting trial -- or rather, retrial -- and just last week The New York Times reported a judge threw out a bunch of evidence in the case, throwing more uncertainty into the whole bizarre affair.

Meanwhile, the murky world of HFT has come under great scrutiny since I wrote about it more than three years ago.

The Aleynikov case so piqued the interest of Michael Lewis -- he of "Moneyball" sports Big Data fame -- that he wrote about it for Vanity Fair last year in an article titled "Did Goldman Sachs Overstep in Criminally Charging Its Ex-Programmer?" and this year parleyed his research into a new book, "Flash Boys." Elsewhere, it's all over the news, with ongoing debates about whether it's an unfair advantage of the rich or a necessary tool to keep financial institutions alive. Just last week, Reuters reported on a Securities and Exchange Commission investigation into 10 HFT firms.

Regardless of the socio/political debate, the technology is fascinating, as I recounted in a follow-up article, "When Milliseconds Make Millions: Why Wall Street Programmers Earn the Big Bucks."

Aleynikov was a C++ guy, and I figured the HFT gurus were using arcane super-sophisticated technology and techniques that weren't within the reach of most developers, but that turned out not to be the case, at least as far as sophistication goes.

I was surprised last year to see an update to a post about "Slang, Goldman Sachs' proprietary programming language," on Stack Overflow:

Apparently, Goldman Sachs' code for program trading is written in a proprietary programming language called slang and relies on a proprietary database (secdb).

A reader supplied more details, "At the risk of getting sued, let me throw you geeks a bone and part the Goldman veil a bit." The reader used to work at the firm and in his post said "you have no idea how primitive the development culture is on the Street."

On Hacker News, Slang was also under discussion a while back:

I've looked at Slang a bit. It's an interpreted dataflow language running on an in-memory database called SecDB. Untyped, Pascal-ish, single-threaded, and poor support for namespaces. Like a spreadsheet, it only needs to recompute the subgraph that has changed. It was probably innovative 25 years ago (I think it came out mid-80s), but today you could write Java code and use memorization aggressively to speed things up. Slang is not why GS traders are successful.

So, apparently, if Slang isn't the answer to the speed question, Goldman Sachs and friends have been doing a pretty good job of holding on to their secrets. As the firm responded to Lewis' Vanity Fair article:

Goldman Sachs has spent millions of dollars and tens of thousands of hours developing the proprietary source code and technology used in our market-making business.

Rather than having a speed advantage, it's more likely that today's technologies have so evened the latency field that the most important intellectual property is probably the logic behind the trading algorithms: exactly what to do when whatever happens. (Though a German article seems to be saying speed traders are turning to microwave transmissions because they're faster than fiber-optic lines.) Nevertheless, for the tech-heads, QuantStart has a detailed examination of the "Best Programming Language for Algorithmic Trading Systems."

Anyway, I'm not too young to change careers; if you have any insights into the fascinating technology backing HFT, please comment here or drop me a line.

Just hope the FBI isn't listening in.

Posted by David Ramel on July 25, 2014