Dependable server software through better languages and tools
FP Complete's mission is to improve the state of software quality in the world. We believe software should be reliable, efficient, and maintainable. Software projects must have clear vision and direction while remaining responsive to changes in requirements. The world today depends on software. We want to make that software better.
We focus on server side software, performing tasks ranging from large scale data computation to responsive web applications. Our passion is in architecting, developing, testing, and deploying top quality software.
For years, development and operations teams have been separated. Code has been proverbially—and sometimes literally—thrown over the wall. Too many bugs have been caused by mismatches in environments, unmet runtime expectations, and insufficient quality assurance. DevOps is both a culture and tooling shift aimed at reducing these problems.
The software world is full of programming languages. Various languages have advantages for specific domains, whether by virtue of powerful languages or special support on the target platform. We acknowledge the reality of this world, and will adapt our language selection process to match the problem at hand. When the choice presents itself, we believe languages promoting strong typing to help avoid bugs at compile time, before the code is ever run. We especially love Haskell and Rust.
To err is human. Hoping that engineers make no mistakes is not a realistic strategy. We spend significant time researching, analyzing, selecting, and creating tooling and processes to provide teams the support they need to work quickly while minimizing mistakes, while still retaining the flexibility and creativity your team needs to thrive.
FP Complete can work with your team in three levels of engagement:
- Training We will provide your existing engineering team with hands-on training and exercises to learn new technologies. Don't get bogged down in a long experimentation process, or searching in vain for reliable documentation. Let us help you move forward quickly.
- Consulting Our engineers will work hand-in-hand with your team, taking on tasks, providing code review, and assisting with architecture design.
- Software solutions You have the idea, we have the team. Let us build your complete software project, from requirements to deployment.
We've worked with dozens of companies building a variety of products. With our cross-project experience and distributed team, we're able to dedicate time to staying up to date with the newest developments in the technology field. We can help your team bypass unforeseen complications and pitfalls that experience has warned us about.