AI Machine LearningFull Time
✌️About the job
Who we are
Our mission at Sourcegraph is to make it so that everyone can code, not just ~0.1% of the population. Our code graph powers Cody, the most powerful and accurate code AI for writing, fixing, and maintaining code, as well as our Code Search product, helping devs explore their entire codebase and make large-scale migrations and security fixes. We’re building software that builds software, and in doing so we’re making devs more productive and growing the population of coders by giving anybody access to the deep knowledge base of a senior engineer through Cody and all of the context it brings. We’re preparing for a world with a lot more code than exists today, and that benefits us all.
It’s an exciting time to join Sourcegraph. AI has taken over the world, and we’ve spent the last 10 years building infrastructure that’s integral to making AI generated code more powerful and accurate. Our customers include 4/5 FAANG companies, 4 of the top 10 banks, government organizations, Uber, Plaid, and many other companies building the software that pushes the world forward. We’ve raised $225M at a $2.625B valuation from Andreessen Horowitz, Sequoia, Redpoint, Craft and others. We’re making ambitious bets on our future and we’re looking to hire exceptional people to join our team as we make Sourcegraph one of the biggest and most influential companies in the world.
🌎 Given that we are an all-remote company and hire almost anywhere in the world, we don’t have a particular time-zone preference for this role. However, you may need to be available for non-recurring urgent meetings outside of working hours.
Why this job is exciting
We are creating a machine learning team at Sourcegraph, aimed at creating the most powerful coding assistant in the world. Many companies are trying, but Sourcegraph is uniquely differentiated by our rich code intelligence data and powerful code search platform. In the world of prompting LLMs, context is everything, and Sourcegraph’s context is simply the best you can get: IDE-quality, global-scale, and served lightning fast. Our code intelligence, married with modern AI, is already providing a remarkable alpha experience, and you can help us unlock its full potential.
We are looking for an LLM Interaction Engineer to take ownership of our core prompt engineering in the Cody coding assistant, beginning with helping optimizing the context window for code autocompletions, but also in setting up, testing, tuning and enabling many LLMs, to help Cody let devs take advantage of the best models on the infrastructure they prefer. You will be interacting closely with ML Engineers, and helping build out the context-as-platform capabilities of Cody. You will own the centralized cross-client services for all Cody commands and functionality, not just completions. By joining our team, you will directly impact how developers code, learn, and collaborate, ultimately shaping the future of software development. If you’re passionate about enhancing developers’ productivity and are excited to be a part of a dynamic team pushing the boundaries of technology, then this role is for you.
📅 Within one month, you will…
- Take ownership of the Cody Worker, a local LSP-like process which contains the cross-client logic supporting Cody “recipes” or interaction modes.
- Drive the creation and implementation of a new, simplified client API layer based on our last several months of development learnings with Cody. This is likely to be in TypeScript/node, for practical reasons.
- Come up to speed on the engineering work happening on autocompletions and other LLM interactions, and form opinions about how we should be steering our cross-client architecture.
📅 Within three months, you will…
- Help support at least four first-class clients (VSCode, IntelliJ, Neovim, Emacs) with the Cody Worker; the client teams will consume the APIs provided by the Worker, which consolidates work contributed by other clients into cross-client APIs.
- Have a vision for which types of models should handle which types of context-creation tasks. You are the owner of populating context intelligently for Cody use cases, using various information retrieval systems (our code graph, search index, embeddings, etc.) and other techniques. You lead the working group deciding how this will be designed.
📅 Within six months, you will…
- With the help of the various client teams, lead the creation of the Cody Worker local tooling ecosystem, which coordinates with local IDEs, local services, and remote microservices to manage accounts, onboarding, indexing, models, and recipes/commands across an entire tooling ecosystem, including IDEs, command-line tools, and other development tools that want to integrate with Cody.
You are a polyglot hacker in the AI/ML space who wants to be part of a world-class team to push the boundaries of AI, with a particular focus on leveraging Sourcegraph’s code intelligence to leapfrog competitors.
First, you have a deep understanding of programming languages, and tools that manipulate code. This could have taken any number of forms; e.g.:
- You’ve worked with grammars and parser generators, or Treesitter
- You’ve worked with compilers and semantic analysis, e.g. type systems
- You’ve written an interpreter, or worked on a virtual machine
- You’ve done static analysis involving scanning source code for semantic information
It doesn’t really matter how you know it, but it’s important that you’re familiar with the basic concepts of semantic representations of source code, and how they’re produced and consumed by tooling.
If you’ve been anywhere near the field lately, you can probably pick up enough about LLM capabilities to be able to drive this space, as it’s all greenfield.
Finally, you shouldn’t be a purist about languages. We may need to integrate the coding assistant into a wide variety of tooling contexts, each with its own programming language. You may find yourself writing in several programming languages along the journey, and hopefully you already know most of them a little anyway.
📊 This job is an IC4. You can read more about our job leveling philosophy in our Handbook.
💸 We pay you an above-average salary because we want to hire the best people who are fully focused on helping Sourcegraph succeed, not worried about paying bills. You will have the flexibility to work and live anywhere in the world (unless specified otherwise in the job description), and we’ll never take your location or current/past salary information into account when determining your compensation. As an open and transparent company that values equitable and competitive compensation for everyone, our compensation ranges are visible to every single Sourcegraph Teammate. To determine your salary, we use a number of market and data-driven salary sources and target the high-end of the range, ensuring that we’re always paying above market regardless of where you live in the world.
💰The target compensation for this role is $190,000 USD base.
📈 In addition to our cash compensation, we offer equity (because when we succeed as a company, we want you to succeed, too) and generous perks & benefits.
Below is the interview process you can expect for this role (you can read more about the types of interviews in our Handbook). It may look like a lot of steps, but rest assured that we move quickly and the steps are designed to help you get the information needed to determine if we’re the right fit for you… Interviewing is a two-way street, after all!
👋 Introduction Stage – we have initial conversations to get to know you better…
🧑💻 Team Interview Stage – we then delve into your experience in more depth and introduce you to members of the team…
- [60m] Resume Deep Dive
- [60m] Technical Interview: Architecture
- [60m] Technical Interview: Code Walkthrough
- [30m] Cross-functional Team Interview
🎉 Final Interview Stage – we move you to our final round, where you meet cross-functional partners and gain a better understanding of our business and values holistically…
- [30m] Values Interview
- [30m] Leadership Interview with co-founder
- We check references and conduct your background check
Please note – you are welcome to request additional conversations with anyone you would like to meet, but didn’t get to meet during the interview process.
Not sure if this is you?
We want a diverse, global team, with a broad range of experience and perspectives. If this job sounds great, but you’re not sure if you qualify, apply anyway! We carefully consider every application, and will either move forward with you, find another team that might be a better fit, keep in touch for future opportunities, or thank you for your time.
Learn more about us
To create a product that serves the needs of all developers, we are building a diverse all-remote team that is distributed across the world. Sourcegraph is an equal opportunity workplace; we welcome people from all backgrounds and communities.
We provide competitive compensation and practical benefits to keep you happy and healthy so that you can do your best work.
We want to ensure Sourcegraph is an environment that suits your working style and empowers you to do your best work, so we are eager to answer any questions that you have about us at any point in the interview process.