Confessions of a Slang coder at Goldman Sachs

I was a Slang coder at Goldman Sachs. I spent 18 months coding front office systems in Goldman Sachs’ proprietary language and then I quit, but I haven’t ruled out returning to the bank in future.

If you’re thinking of moving to GS and coding in Slang, there are a few things you need to know. Slang is something that’s generated a lot of myths – and not all of them are accurate.

Firstly, Slang is sort of similar to Python. It’s certainly no more difficult to learn than Python. Fundamentally, though, Slang is a single-threaded language that relates to SecDB, Goldman’s risk and pricing system, which is effectively Goldman’s object store. Slang has evolved over time: it’s a language with various optimizations built-in, including – for example – a calculating processing system called “Graph” which refuses to reevaluate calculations that have already been done. In this sense, Slang is perfectly designed for Goldman’s needs. It’s also deeply embedded in all the firm’s systems and risk models.

Using Slang it’s possible to load an instrument and related market data from Goldman’s database and to investigate it within the Slang environment. Goldman’s traders and risk managers are able to do this themselves without knowing much Slang themselves – they can see what’s going wrong with a trade without having to bother the IT team (as often happens at other banks). This frees up the Slang coders to do other things.

What other things? Well…If you’re coding in Slang at Goldman you’re going to be spending at least some of your time reinventing solutions you’d get for free if only you were coding in Python. In many cases those solutions would also be far simpler if you were using a mainstream coding language.

Viewing Slang data in a web browser is a case in point. Goldman typically has several different ways of accessing data through a browser – each one written at a different point in time when different technologies were in fashion. You don’t get this elsewhere: if you’re using C# or Python there’s just one standard framework. A lot of the work being done at Goldman is about this plumbing between Slang and the web. The firm has reams of documentation and huge online forums to help its engineers find solutions that work. It’s interesting, but can be challenging.

The real issue with working as a Slang programmer at Goldman is that you’re not going to get any credits for mentioning on your résumé that you’ve spent the past few years setting up GS web services. – Slang experience doesn’t translate to other organizations. Goldman isn’t alone in this – most large companies are guilty of building large systems which you have learn how to operate, only to find that this knowledge isn’t directly applicable elsewhere. However, Goldman is a particularly bad offender in this respect.

The good news is that if you’re thinking of working in programming at Goldman you might never have to code in Slang itself. Most of the coders at GS today never touch Slang. Instead, there’s a huge team busy exposing Slang functionality to the non-Slang world. Goldman’s chosen interface is Java. JavaScript is very popular at GS today: all new graphical user interfaces (GUIs) at the firm are being written for the web and they need a lot of JavaScript coders to make Slang’s functionality accessible.

To be clear, I loved my time at Goldman Sachs. The people there are great and I wouldn’t be surprised if I do another stint at GS in the future. Slang is also an excellent language that’s been honed to match Goldman’s needs, but there are some downsides and it’s best that you go in with your eyes open.