Palantir Technologies

Software Engineer - Core Interfaces

Palantir Technologies • US
JavaScriptTypeScript
A World-Changing Company

Palantir builds the world’s leading software for data-driven decisions and operations. By bringing the right data to the people who need it, our platforms empower our partners to develop lifesaving drugs, forecast supply chain disruptions, locate missing children, and more.

The Role

Palantir builds applications that help customers organize, understand, and make decisions based on their data. Because these applications serve different roles within an organization's workflow, users frequently have multiple applications open at once, and expect them to work together seamlessly. While backend services handle much of this coordination, delivering a truly fast and responsive experience requires applications to also directly interact with each other through client-side frameworks running in the browser. Building these frameworks is uniquely challenging: every Palantir application plays a distinct role and has its own set of first-class UX concepts, yet the frameworks need to integrate cleanly into all of them. Success requires both strong API design skills and a keen eye for user experience.

The frontend frameworks our team builds serve a variety of functions across Palantir's application ecosystem. Some frameworks integrate deeply with the Palantir Ontology—a foundational layer that provides a schema for defining objects and relationships between them. These frameworks enable real-time data synchronization across applications: for example, when a user selects an Ontology object on a map, data plots in a different application instantly update to show that object's properties. Other frameworks operate independently of the Ontology: for example, one framework allows applications to define custom behaviors that can be invoked by other applications or even by AI agents, giving them the flexibility to expose arbitrary functionality across the platform.

Core Responsibilities

As a software engineer on this team, you'll work with these cross-application frameworks end-to-end, from the low-level technical implementation to high-level UX decisions. You'll work extensively with core web APIs—Broadcast Channels, Service Workers, Local Storage—to enable real-time communication between applications. Additionally, you will help develop an Electron application that extends and enhances these workflows through Electron-specific capabilities, such as the IPC API. Along the way, you'll build relationships with teams across the company and develop a deep understanding of different codebases and their architectural patterns.

API design is central to the role: the interfaces you create need to be ergonomic and portable enough to slot into any application that adopts them, while also being powerful enough to enable complex user interactions. Just as important is a strong sense and passion for UX: the interactions these frameworks enable should feel native and intuitive regardless of which applications a user has open. The ideal candidate is a well-rounded engineer who is excited by the creative challenge of designing new cross-app behaviors, and has the technical know-how to codify these behaviors in an idiomatic and extensible way.

Technologies We Use

  • TypeScript and React for frontend development
  • Electron for our desktop application framework
  • A combination of open-source and internal technologies that suit the problems at hand
  • Industry-standard build tooling, including Gradle, Webpack, GitHub, and CircleCI
  • What We Value

  • Passion for collaborating across teams and quickly ramping up on unfamiliar codebases
  • Creative problem-solving skills and excitement about designing novel user interactions
  • Experience building high-quality software in a fast-paced CI/CD development environment
  • Ability to ramp up quickly and autonomously; willingness to learn continuously, work independently, and make decisions with minimal supervision
  • Drive to unlock and improve user workflows while maintaining engineering quality
  • What We Require

  • 2+ years of frontend software engineering experience
  • Strong frontend coding skills: regardless of which frameworks you use or how you learned them, we're looking for people who can write clean, effective code with proficiency in JavaScript and an understanding of how web technologies work
  • Bachelor's degree in Computer Science or related field, or equivalent understanding of algorithms, performance, and systems design
  • Strong written and verbal communication skills
  • Eligibility and willingness to obtain a US Security clearance