Why Woovi bet on JavaScript?
Tags: javascript, woovi
Published: 2024-01-03 11:42:25

Always bet on JS!

## Concurrency Model

Most web applications are I/O bound. JavaScript concurrent model thrives in I/O bound applications. A program that uses an event loop is much easier to reason and debug than a program that uses threads. It also makes it easy to scale our server horizontally without much effort.

## Ecosystem

JavaScript provides a huge ecosystem both of packages, open-source code examples, and frameworks.
We can leverage this to build faster and focus our efforts on building a product that delivers value to our customers.
Instead of trying to solve already solved problems, we can solve innovation in our business domain.
If we want to experiment with new tech, you can be sure that someone in the world will code this new hype thing first in JavaScript.

## Developer Community

JavaScript has one of the largest and most active developer communities.
We can hire from this big talent pool to grow our headcounts as needed.

## Type System and Functional programming

Typescript provides a sound enough type system, where we can design or software to describe our business domains. It also helps us refactor finding bugs in real time. 
It also provides a good DX on IDEs. Functional programming lets us write composable programs using functions as building blocks.

## Monorepo

The best monorepo support is in the JS ecosystem. 
We use monorepo to organize our codebase in domains. 
This lets us create explicit boundaries and it would make it simpler to break in microservices for scalability reasons in the future

## Tooling

Eslint, prettier, jest, codemod, webpack, babel, esbuild, swc, vite, and more.
JavaScript provides the best tooling.
This tooling is what makes us move faster without breaking things.
We have many developers and companies to make JavaScript better and faster.

## Reuse Code and Knowledge

We can also reuse our JavaScript knowledge to build desktop apps using electron or mobile apps using React native

JavaScript simplifies our stack, our developers need to know more about JavaScript than know more about other programming languages like Java, Go.
This helps us reduce the cognitive load on developers
We can also apply knowledge from the backend to the frontend and vice versa. We can also reuse the same tools for error monitoring, APM, and analytics

## In Conclusion

We love JavaScript at Woovi.
However, we can use other programming languages when needed to solve specific problems.
We use a lot of PHP to write some plugin integrations for e-commerce.
We also provide some native SDKs for some programming languages.

---
Woovi
[Woovi](https://www.woovi.com) is a Startup that enables shoppers to pay as they like. To make this possible, Woovi provides instant payment solutions for merchants to accept orders.

If you want to work with us, we are [hiring](https://woovi.com/jobs/)!

---

Photo by <a href="https://unsplash.com/@comparefibre?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Compare Fibre</a> on <a href="https://unsplash.com/photos/black-flat-screen-computer-monitor-tiSE_paTt0A?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Unsplash</a>