What we do
The vision of a smooth running business is what unites the team at Finale Inventory. We’ve worked with small and medium businesses for nearly ten years creating a SaaS inventory management system that is precisely adaptable to the finest details of each customer's processes. Coupled with offering world-class on-boarding, training and support, the solution helps companies get ever closer to the vision of a smooth running business.
We’re a fully bootstrapped company that has built a thriving business grounded on long term relationships with our customers and employees. Not having outside investors keeps us focused on building sustainable growth based on our revenues.
How We Work
Our team has been fully remote since the company’s inception. We make remote work work by trusting each other, collaborating with each other, and focusing on results over process.
We have team members in North America, South America, and Europe and are headquartered in Northern California. Engineers are responsible for designing and delivering features that delight customers and grow the business, building features end-to-end working directly with customers to make sure they meet our users' needs.
Our engineering environment
We have a disciplined development process that moves quickly but not chaotically. We meet biweekly to plan sprints based on task breakdowns from the person doing the work. We ship code multiple times per day. We deliver quality software by applying multiple best practices including automated unit/integration tests, working in small batches, peer code reviews, and automated deployments. We rapidly revert or fix issues discovered by our extensive alerting and tight integration with our service team. We improve our processes over time using blameless postmortems after serious issues. We invest in developer efficiency by, among other things, ensuring tests complete reliably without intermittent failures and steadily refactoring code for simplicity.
Engineers are responsible for understanding our customers and their problems. They use judgement to design features in conjunction with our business operations team that delight users. To foster understanding, engineers interact regularly with customers when fixing issues and by periodically shadowing our business operations team on sales or service calls.
The major components of our technology stack are Node.js, React, MySQL, Redis, Linux, and AWS. Our JavaScript code uses modern idioms such as functional reactive programming. We also use C++ compiled to WebAssembly and also compiled as a native Node.js module for performance critical code. We use GitHub, Slack, Zoom, and Monday.com for collaboration. We do NOT use Jira.
Who you are
You are an experienced engineer that has previously shipped commercial software using the technologies in our stack as part of a team. You believe that doing is more important than talking, and understand the difference between activity and action. You are familiar with modern software development practices (such as automated testing and continuous deployment) even if you haven’t had a chance to use them in your professional work. Even if you don’t have a degree in computer science, you have learned the essentials of data structures, algorithms, operating systems, databases, networking, computer architecture, and concurrent programming.
You live in North America, South America, or Europe and are able to frequently collaborate with your colleagues between the hours of 9am and 2pm in the US Pacific time zone. English may not be your first language, but you are nearly fluent when conversing about technical or business topics.
What you will do
You will be writing and shipping code on our core product. Depending on your specific skills and interests you will be:
In addition to shipping code, you will use your experience to regularly contribute to the overall engineering direction of the company.
Benefits and Perks
Hiring Process
Candidates communicate directly with Chris Hondl, our co-founder and CTO, during the interview process. Chris will review resumes and credentials of all applicants. Agencies and contracting firms will not be considered. Selected applicants will have between five and seven remote interviews, some of which involve coding using Zoom screen share in an editor of your choice. Interviews are scheduled at the mutual convenience of the applicant and the interviewer. In most circumstances we do not use take home coding challenges. Generally interviews are completed in six to nine business days. All applicants who are invited to interview will receive an email stating whether or not they have been offered a position.