Senior React Web Developer

Job Description

Remote Position / Full Time

We are building a platform to help us train the next generation of innovators. This includes a Learning Management System to help us deliver high quality training online, live workshops, and even simple games to help teach basic innovation principles.

Our customers want to learn how to be agile and lean innovators - and they also don’t want to be bored silly or feel like they are learning useless theory that doesn’t apply to the real world. All our training and coaching is done on real innovations so we’re not wasting anyone’s time.

The best part of our job is meeting a startup we worked with years ago and hearing how it failed miserably- but then they kicked off a new startup using lean principles and now they have an acquisition offer! 
The tech you build has to have real-world impact to make entrepreneurs and intrapreneurs more successful. Sometimes that means helping entrepreneurs shut down bad ideas and move on to better ideas and more impactful innovation.

We are looking for a senior developer who can help lead this project.

You’ll be part of a remote team that works at a fast, agile cadence to determine the best way to help our customers learn. We don’t just want clean code, we want you to help us deliver value to the end user. You will be reporting to our Head of Learning and working directly with everyone on our small, international team including the CEO. You may need to work with and help manage a junior frontend developer to help complete this project.

We prefer a low management overhead team. So if you can work well with other engineers, manage your own tasks, keep Asana up to date, and proactively communicate challenges, we want you on our team.

You’ll need to be able to balance creating robust, test-driven code and creating quick prototypes to test out ideas with real users. So if you enjoy working in an agile, remote team, have a love for problem solving, and can handle the responsibilities described below, we want to hear from you.

Duties & Responsibilities

Solve for User Problems

  • You should be able to understand the requirements from the user point of view and come up with solutions to the user problem, not just fulfill the technical requirements.
  • You should proactively ask questions to clarify the requirements.

Contribute to Business Decisions

  • You should help evaluate technical feasibility of solutions and help make build or buy decisions.
  • Sometimes the best thing is to use off-the-shelf software and not code anything.

Write Test-Driven Code

  • You must write robust, testable code, along with unit, functional, acceptance and/or user tests to validate the use cases.
  • We don’t need 100% test coverage, but we expect every engineer to contribute to quality control when needed.

Manage Technical Debt

  • You should write clean, well commented, efficient code so other developers can understand and work with it.
  • Sometimes refactoring is a great idea and sometimes it’s not. You should work with the product manager to evaluate the tradeoffs.

Create Meaningful Estimates

  • Making accurate estimates is challenging. We work by estimating ranges so we can create meaningful project plans.
  • You should work with your team to make realistic estimates so we can make good product management decisions together.

End vs. Back End

  • We are hiring for both front and back end engineers but we are looking for a senior developer who can make the primary architecture and database decisions.
  • This means you must be able to apply object-oriented analysis and design, understand the principles of web frameworks, and both use and create REST APIs for a micro-service oriented architecture.

Technical Notes:

The Learning Management System and coaching platform we are building will be white labeled by some of our clients. So we will be using a very modular service oriented architecture that will allow the client to replace the branding and turn some features on/off. For example, we whitelabel some of our educational games like plinkromatic and ants.

Some of our clients will also be running the platform on their own servers so we will be building integrations with SaaS tools like Google Analytics, Mailchimp, etc. for Kromatic, but the entire system must work with zero internet access in a standalone Docker container as well.

We are flexible with our tech stack and are not afraid to switch to a new tech stack. Currently we most commonly use:

  • Figma for prototyping
  • JavaScript / TypeScript
  • HTML
  • CSS
  • React
  • Relational databases
  • Docker
  • Heroku for continuous deployment
  • Jest for testing
  • oAuth for authentication
  • Role Based Access Control (RBAC)
  • Material UI components (3.0 just released)
  • Web Accessibility (AA standards)
  • Next.js

Salary & Benefits

  • Competitive salary with team bonuses.
  • Complete transparency on company finances and team member salaries.
  • Benefits like health insurance and retirement scheme for US employees - comparable cash comp for those outside the US.
  • Flexible working hours - if you get your work done on time, we don’t care whenyou do it.
  • Work from anywhere. If you can coordinate with our international team, wedon’t care where you live.
  • Flexible vacation days (paid time off.)
  • Extended maternity leave.
  • Take a leave of absence - we’ll hold your job as long as possible or try and findyou a new one.
  • Virtual social events.
  • Challenging work assignments.
  • Career development opportunities
  • Make a real difference in people’s lives

The Weird Stuff

  • We aspire to work to a set of principles - read more about Kromatic’s Principles here.
  • Our hiring process is thorough - brace yourself.
  • We are a remote, highly distributed team and it requires some work hours flexibility and odd meeting times.
  • Your roles and responsibilities will likely shift over time.
  • There is a high degree of ambiguity in this role and success is always uncertain. We want someone who is prepared for a challenge.
Send your application to moc.citamork@ynnek