Golang / Go Job: Senior Software Engineer - Language Analysis Team


Senior Software Engineer - Language Analysis Team at source{d}

🇪🇸 Spain › Madrid   (Posted Jun 24 2019)

About the company
At source{d} we are building the technology stack for the next generation of Machine Learning powered developer tools. We are an open-core company built around our Open Source projects. We have raised over eight million USD so far, and we are currently growing our team.

Do they allow remote work?
Remote work is possible, see the description below for more information.

Job description
Engineering at source{d}

Engineering consists of five different teams that represent the architecture of our product:

• Applications (Scala, Go, Python, and Frontend tools): Builds CLI/Web applications combining ML research with our stack.

• Machine Learning (C++ and Python): Performs R&D for Machine Learning on Source Code.

• Data Retrieval (Scala and Go): Builds the technology that finds, fetches, stores and analyzes over +60M Git repositories.

• Language Analysis (Go and another +15): Focused on Babelfish, the universal code parsing server.

• Infrastructure (Go and Python): Manages a cluster of on-prem bare metal servers with Kubernetes and CoreOS, and GCP for user facing applications.

We care about Open Source. Everything we develop is available for anyone to read, modify, and contribute (under Apache 2.0 or GPL3 license). Some examples of our projects are:

• bblfsh/bblfshd: Babelfish server, turning code into Universal Abstract Syntax Trees (UASTs).

• src-d/engine: a library for running scalable data retrieval pipelines that process any number of Git repositories for source code analysis.

• src-d/go-git: a highly extensible Git implementation in pure Go.

• src-d/ml: a library to build and apply Machine Learning models on top of Universal Abstract Syntax Trees.

If you are interested in understanding how we do code reviews, please take a look at the PRs on any of these projects. You can also learn more about our engineering methodology here.


• source{d} is a company for developers by developers. We firmly believe in always doing what's best for the individual developer in the community. Our team consists of members who are passionate about programming. To understand our culture better, read more about it here.

• At the moment, we are 25+ people from 10 different countries working closely together from our office in Madrid. We are more than happy to sponsor you a visa and guide you and your family through the whole process if you decide to come to work from our office, but you may also choose to work remotely. Currently, we have remote team members in USA, Portugal, Ireland, France, Belgium, Poland, Estonia and Russia.

• For those wanting to work from one of our offices, we fully support the visa and moving process for you and your family.

• At source{d}, we have a transparent salary policy which we feel strongly about it. Your seniority level will be determined during the last round of on-site interviews.

• At source{d} all of the projects we work on are public on GitHub and the vast majority are open-source under licenses such as Apache 2.0 or GPL3.

• We don't just believe in open-source, we also believe in radical transparency as an organization, there we publish everything about the company at github.com/src-d/guide.


• We go to conferences and other developer events!

• Open Source Days, every second Monday, you are encouraged to work on any OSS project you choose.

• Flexible hours, set your own schedule that fits you.

• Free books. We will buy any books that help you learn & grow.

• If you choose to work from one of our offices, you will enjoy a comfortable and spacious environment.

• Annual summer and winter Christmas parties and a hackathon retreat are held in Madrid and all team members are flown over for it.

• We also have our own, Open Source craft beers.


• We offer visa and relocation support for those wanting to work in the Madrid office.

• The local timezone of developers who want to work remotely should be between San Francisco and Moscow.

Skills & requirements

The Language Analysis team is developing source{d} tools and libraries for generating and processing universal abstract syntax trees for programming languages. These components are integrated into the Babelfish Open Source project, written in Go, C++, Scala, and any other language that we're parsing.

• Babelfish powers the cutting-edge research that our Machine Learning team does on their ambitious mission to provide Machine Learning on Source Code. Our tools also are being used by a community of developers, researchers, and companies across the world in order to do vanguard research and build the next generation of developer tools.

• Being passionate about programming languages is important as well as an interest in the lexing/parsing/semantic analysis of programming language's interpreters and compilers.

• You'll be expected be experienced programming in at least two languages and have strong good algorithmic skills. Our main language is Go, but prior experience is not a requirement; we strongly believe that it can be learned easily by any skilled developer and care a lot more about our team's mindset and prior experience than any specific languages.

• Modern C++ knowledge and experience would be considered a plus.

Apply now!  

Other jobs that might be interesting

Mid Full Stack Developer - Network Gaming   (July 2020)
Worldwide, 100% Remote
At the end of July we completed bringing the platform in house and we are now looking to build our core development team. Your goal is help take ownership of the full stack, manage the platform, pay down any technical debt accrued, and begin building a network...

Remote Go backend Engineer (UK/EU Only) - Vistas recruitment   (June 2020)
Remote Europe, 100% Remote
Location: 100% Remote Type: Permanent Salary: £60,000 - £80,000 Per Annum You want to have an influential Go development role in a small team? Want to work remotely? Want to work in a secure, cash-healthy company? My client is a small, cash healthy company...
Golang Backend Engineer - Hiveway   (June 2020)
Remote Europe, 100% Remote
Hiveway is a leading shared-cars and subscription-car business operator. We just finalized our fundraising and want to invest in our tech platform. We're looking for a seasoned backend Golang engineer to help us design and build our core APIs. Keywords he...
About Golangprojects