Principal Software Engineer

About Innolitics

We're a remote-only team of 12 software engineers helping accelerate progress in the medical device industry. We're doing this in a few ways: First and foremost, we help our clients write software for their medical devices. Second, we create tools to help startups efficiently navigate this highly regulated industry. Third, we share our knowledge through the articles we write.

Yujan and David, our founders, are both biomedical engineers and software developers. (Yujan is also an MD!) We've found some better ways of writing medical-device software that we believe will transform the industry. You can help us make this happen.

Investment in the medical device industry is booming due to COVID, and AI/ML is making its way into the clinic. It's a good time to be in this space and we expect to grow significantly over the next few years.

Do you want to work on meaningful and challenging medical device projects in an environment where code quality matters? Do you want to work on a team that values continued learning and takes pride in our craft? We're a growing, fully-distributed medical-device software firm. We're looking for a principal software engineer who can manage and mentor a small team of engineers and communicate with clients to refine vague requirements.

Who are we looking for?

It is required that you:

It would be nice if you have:

How success will be measured

Your success as a principal software engineer at Innolitics will be measured along three axes: First, by the value, and perception of this value, you provide to our clients. Second, by the technical and professional growth of the engineers on your team. Third, by your contributions to Innolitics' mission via business development. Each of these three axes are discussed in more detail below.

You'll be directly responsible for one or more client projects. We want to impact the world—our work is our vocation. Thus, we measure our success by our client's ability to bring useful medical devices onto the market. To do this, we must add value to our clients through our work. This isn't enough though. If our clients are going to be happy working with us, they also need to be satisfied with our adding value. Client Satisfaction = Perception - Expectations. You'll need to build the trust and respect of our clients over time, so we can increase our impact. Sometimes adding value requires ruffling feathers and having difficult conversations about tradeoffs, timelines, or bad technology.

Many of our clients are startups. You'll need to learn about their business needs and help them define the device requirements, which are often vague or unknown. If we're building exactly what the client asks us to build, we're probably not doing our job.

You'll be responsible for managing and mentoring other engineers on your projects. This means reviewing pull requests, holding one-on-ones, and conducting performance reviews. Your goal will be to help the people on your team grow and expand their skills quickly, delegating tasks that are just on the edge of what they're able to accomplish. You'll be responsible for training your reports through 10x lessons. You'll also be responsible for creating new 10x lessons as needed.

Typically you'll be most technically involved with projects early in the life-cycle, helping identify key requirements, sketching rough UI designs, making key architectural decisions, and documenting all of this. You'll also be responsible for managing the software process. As the requirements and architecture progresses, your involvement will gradually decrease as you delegate more of the work to your engineers.

Beyond your work with clients, you'll also be involved with hiring and training. You'll also be responsible for identifying ways we can provide more value to existing clients.

Your first 90 days

We recognize this role requires a lot of skills, and you likely won't have all of them. Thus, for your first 90 days you'll split your time between intensive training and working on a client projects. You'll be working closely alongside David or Yujan, working through some of our 10x lessons, as well as reading a lot of background material.

Our on-boarding reading list includes:

The first few months will require a good bit of outside reading time, but after the initial hump our goal is to have the hours load drop to 45 hours/week (most of our engineers are only expected to work 40 hours/week). Anything beyond this will be paid according to our overtime policy

To begin with you'll focus on a single client project. You may also work solo for a while, but the reason we're looking for a principal senior engineer is so that, eventually you'll be able to manage two or three client projects each with one or two engineers dedicated to the project.

Why would you want to work for us? 🔗

Meaningful work 🔗

We only work on fulfilling projects—ones that we believe improve the world. For example, our current projects include software for radiation oncology clinics, a startup building an medical device to detect ear infections, open-source software used by neurosurgeons and researchers, software for tracking metastatic cancer, and several others.

You can see past projects in our portfolio.

Compensation 🔗

We pay competitive salaries including overtime pay and bonuses.

Small and growing 🔗

We’re small, profitable, and growing quickly. If you work with us you can participate in our growth and help define the direction we move in. There will also be opportunities to grow your career. You can also wear many hats and contribute to the company beyond software development.

Talented and fun teammates 🔗

Work with a team of talented, mission-driven engineers who will help you become a better engineer. We're also a lot of fun and have a close-knit group, despite being fully-remote.

Stay relevant 🔗

We invest in the personal and professional development of all our team members. We dedicate two and a half hours on Wednesday afternoons to ongoing learning. Here is a list of our previous learning topics.

You’ll also have opportunities to change projects from time to time and be involved with many more.

Remote only 🔗

We’ve been remote-only since 2012. You can live wherever you want within the United States except for California, Alaska, and Hawaii.

Balance 🔗

We love what we do, but we also have lives outside of work. We have flexible work hours. We usually work 40 hours/week and have an overtime pay policy. It is rare to have people working during nights or weekends (unless they want to). Most individual contributors have only three or four meetings a week.

We provide two weeks of paid time off your first year, three weeks your second and third years, and four weeks for each year after that.

Benefits 🔗

We provide a 401(k), with Traditional and Roth options. Innolitics contributes 3% of salary per year to your 401(k) once you’ve worked with us for six months, and that money vests immediately. The 401(k) plan includes very low-cost index mutual funds, and we cover all the plan costs.

We provide company health insurance (read more about this in our handbook). We reimburse internet costs up to $100/month and provide a $500/year equipment stipend.

How to apply 🔗

Send an email to info@innolitics that includes

What happens after you apply 🔗

We’ll read your email and review your resume.

If we don’t think you’re a good fit, we’ll let you know. We probably won’t respond if you don’t live in the US or haven’t explained why you want to work at Innolitics in particular.

If it looks like you’re a good fit for the role, we’ll get in touch regarding next steps.