Senior Software / ML Engineer, story systems
Hidden Door
We're looking for an experienced software engineer to help design, build, and maintain the core of our narrative AI platform.
Hidden Door is a game technology studio building the first narrative AI — a platform that transforms any work of fiction into an infinite social roleplaying experience, bringing together players, authors and other creators.
Role overview
We're looking for an experienced software engineer to help design, build, and maintain the core of our narrative AI platform. This system builds compelling stories using a combination of modular plot structures, classical and generative machine learning approaches, and a decision-making story governor. Our server architecture is substantially written in Python to support our machine learning systems (e.g. spaCy, PyTorch, Hugging Face).
You'll be joining our small and mighty engineering team! If you're passionate about building creative experiences at the intersection of engineering, the web, narrative gaming, and AI, we'd love to connect with you 🙂
Things you'll do:
Imagine this: the team is working on making character arcs more compelling within our narrative platform. You have a sense of what makes for a great character arc, and collaborate closely with game design, narrative design, and product folks on goals and to identify possible approaches. You would synthesize that with your understanding of our existing story architecture to propose and implement a solution.
That might involve expanding the part of the plot system that handles NPC goals, rapidly testing a few different ML models for a specific task, and/or proposing a how this project could share design and code metaphors from existing the system that handles plot arcs.
We aim to design thoughtfully, ship a minimum version ASAP, and iterate on that.
About you
- Experience with software engineering and practical machine learning (especially applied NLP and other ML techniques for working with text—not just ChatGPT).
- Examples of delivering production software with a product mindset. You think about the big picture, always center the user, and believe that technology is a means to an end.
- Excellent written and verbal communication, attention to detail, and a love of close collaboration with a team.
- An experienced sense of when to prioritize speed-of-making and when to slow down for craft of execution.
- Interest in and engagement with how we tell stories! You might be an avid D&D player, reader, writer, fanfic author, text-based RPG player, anthropologist, or have coursework in narrative design. No matter how you come by it, thinking about story and its structure are critical to the success of this role.
- Experience with relational databases.
- Experience building client-server API architectures with Python (we use FastAPI and Pydantic).
- Experience building backend services from 0 to 1 and scaling them gracefully.
- Background in consumer-facing mobile, web, social, or game engine apps.
- Passion for telling stories and playing games — even better if you've worked on a game of any type!
Other things to know
- We're a small team with shared core working hours centered on Eastern US Time. An ideal candidate would work a couple of days per week in our Brooklyn office; fully remote (with occasional travel) considered for exceptionally strong candidates.
- We love getting together as a whole team IRL! Our team meets up quarterly, often internationally, for planning and fun. We also regularly gather ~1x/month in NYC for jam sessions on product, game design, marketing, and more. Expect adventure 🚀
- This is a startup! As an early employee, you’ll play a role in shaping the company as well as the product.
- We value curiosity, creativity, and diverse perspectives. Successful teammates here tend to be kind, experienced folks who care deeply about craft but are also highly pragmatic.
- We strongly encourage candidates from under-represented or non-traditional backgrounds to apply.
Benefits
- 🏝️ Unlimited vacation (required minimum: 1 week per quarter)
- 🩺 100% medical, dental, and vision for employees, and family coverage
- 💪🏻 Reproductive and gender-affirming care benefit
- 💵 $1,000 annual home office budget ($2,000 your first year)
- 💜 Work with authors and artists
- 🙈 No NFTs or crypto
How to apply
Please apply here ! It will ask you to provide a resume or LinkedIn profile, tell us a bit about yourself, and share a story about something you've built that you're proud of and how it makes you a good fit for this opportunity. If you run into any issues, just email us.
Process
We don’t do white-boarding or tricky code challenges. Our goal is to get to know each other and your background, learn how you think and work, and see if we are a good mutual fit.
- Phone screen(s) with the hiring manager and a cofounder. We’ll talk about your background, what you’re looking for, and how you work.
- Short technical take-home on a small, realistic ticket (~2 hours). You will add a small story-related feature to a pared-down codebase in Python.
- Full interview:
- 1-hour pairing session to extend the work you did on the take-home.
- Three 45-minute discussions with the team on practical topics like engineering practices or collaboration.
- 30-minute Founder Q&A.
- References and offer.