The runtime behind our own products

Node.js development for APIs, integrations and jobs that run on their own

Everything we operate runs on Node.js: our AI publishing platform, our multi-tenant CRM and the chat that qualifies leads. We use it to connect systems through APIs, schedule background work and respond in real time, written in TypeScript end to end.

What runs on Node.js today, under the hood

Our own production code. We get technical on purpose, because that’s how you should evaluate a backend team.

  • Odinoa: jobs and workflows on Vercel

    Runs on Node.js 24 in Vercel Functions. Cron jobs pull indicators and publish in batches; long workflows are split into steps that resume after a failure; a retry against WordPress updates the post instead of creating a duplicate.

  • A lead-qualifying chat

    On the landing page for WAPI, the service we sell with Wapo Marketing, an API route loads the knowledge base, asks the model for schema-validated output, saves the conversation and creates the lead once it has a name and a phone number.

  • Real-time CRM

    Takes in leads from several websites, identifies their source and shows them instantly to each brand, with every client’s data walled off by database access rules.

  • Nightly backups

    A Node.js script uploads each night’s database backup to private storage and deletes copies older than the retention window.

Problems we solve with Node.js

Almost all of them come down to systems that don’t talk to each other, or tasks that depend on someone remembering:

  • Your online store, your CRM and your email platform each hold a different version of the same customer.

  • A vendor sends webhooks that nobody processes, or that get processed twice.

  • A nightly job fails every so often and you find out days later, from a customer.

  • Your current integration falls over whenever the third-party API is slow or returns an error.

  • Your backend runs on a Node.js version that no longer gets security patches.

Is Node.js what your project needs?

It’s our main runtime, and we still don’t recommend it for everything.

Node.js fits if…

  • You need to wire together several APIs and webhooks: payments, CRM, WhatsApp, WordPress, email tools.
  • Your frontend is React or Next.js and you want one language, TypeScript, across the stack.
  • You need scheduled jobs, event handling or real-time responses.
  • The work is mostly waiting on other services rather than crunching numbers.

Pick something else if…

  • The core is number crunching, statistical analysis or machine learning: Python wins there.
  • You need a content site your team can edit: WordPress handles that without a custom backend.
  • Your engineering team works in PHP and will own the system: Laravel will feel more natural to them.
When Python makes more sense

Where your Node.js should run: three architectures

Where the code runs matters as much as the code. These are the three options we weigh.

  • Cost when idle
    Close to zero: you pay per use.
    Long-running work
    Each invocation has a time limit; long work is split into steps.
    Real time
    Not designed for open connections; hand it off to a service like Supabase Realtime.
    What you maintain
    The code and its dependencies; the platform scales for you.
    When to choose it
    APIs, integrations and cron jobs with spiky traffic.
  • Server or container

    Cost when idle
    Same as at peak: it’s always on.
    Long-running work
    No practical limit while the server is up.
    Real time
    Your own WebSockets, no middleman.
    What you maintain
    Plus the OS, patches, restarts and scaling.
    When to choose it
    Persistent connections or your company’s infrastructure requirements.
  • Queue worker

    Cost when idle
    The running process plus the queue service.
    Long-running work
    Built for it: processes jobs outside the user’s request.
    Real time
    Not applicable: it works in the background.
    What you maintain
    Plus the queue, retries and stuck jobs.
    When to choose it
    High volumes of heavy jobs: imports, bulk email, file processing.

General comparison as of October 2026. Our own products run on serverless functions on Vercel, and one project can combine all three.

How we keep integrations from failing silently

  1. 1

    Service inventory

    Every third-party API, with its authentication, rate limits and what happens when it doesn’t respond.

  2. 2

    Validated contracts

    Every payload in or out is checked against a schema. If a vendor changes its format, we know on the first message, not in next month’s report.

  3. 3

    Retries without duplicates

    Each operation carries a unique key: if it runs again, it updates instead of creating a second order, lead or post.

  4. 4

    Run logs

    Every job records what it did, when and with what result, so failures get debugged with data, not guesses.

  5. 5

    Up-to-date runtimes

    We choose LTS releases of Node.js and plan the upgrade before the current version loses support.

What our clients say

Real reviews our clients left on Google.

  • Viviana Hidalgo Alvarado

    October 2026

    I really enjoyed my experience with User Media. They are very professional, attentive, and always look for the best way to help. I love that they listen to ideas, give good advice, and propose solutions I hadn't even considered. It's clear they know what they're doing and enjoy their work. I highly recommend them!

  • Dayanna david tapias

    October 2026

    I loved working with User Media. They're incredibly creative, have amazing ideas, and pay close attention to detail. I especially appreciated their dedication and how easy they are to work with. Highly recommended!

  • Daniel Gómez

    October 2026

    I loved working with User Media. They're incredibly creative, have amazing ideas, and pay close attention to detail. I especially appreciated their dedication and how easy they are to work with. Highly recommended!

  • Andrés Felipe Pájaro Martinez

    October 2026

    A very good experience with User Media. They've helped us with various digital projects and have always demonstrated knowledge, commitment, and a great willingness to find solutions. I especially want to highlight their expertise in web development and automation. I highly recommend them.

  • Sergio Andres Pájaro Martinez

    October 2026

    Our experience with User Media has been excellent. They've supported us in content creation projects for social media, news, web development, and process automation. Something I particularly appreciate is that they don't just execute our requests; they get involved, propose ideas, and constantly seek new ways to leverage technology. Their experience, commitment, and passion are evident in every project. Without a doubt, they're a great technology partner that I highly recommend.

  • Johnattan Rodriguez

    December 2025

    We've worked with Crece Virtual on several web design projects for our Barranquilla operation. Their team demonstrated a solid command of both WordPress and React, adapting to the specific needs of each project based on our technical and functional requirements. What we value most is the quality of the codebase they deliver. Each project has a clean and well-organized structure, which has greatly facilitated updates and the addition of new features when needed. The technical documentation they provide is clear and useful for our internal team. Communication throughout the entire process was smooth and professional.

  • Evelintoya1011 Montoya

    December 2025

    Working with Crece Virtual transformed how we acquire clients. From the outset, they understood our business and guided us through everything: digital strategy, website architecture, and domain selection. The WordPress site, with a custom theme and widgets created in Elementor, turned out exactly as we needed: fast, clear, and designed to make requesting quotes effortless. Thanks to technical SEO, link building, and Google Ads campaigns in Medellín, our quote requests increased several times over, stabilizing at nearly 500% higher than at the beginning. The automation that sends leads from WhatsApp to Google Sheets, complete with all the data and UTM parameters, allows us to better measure sales and repeat purchases. Furthermore, their hosting, domain, and Google Workspace services have been reliable, and whenever we need support, they're always there with quick and clear answers.

  • Diana C

    November 2025

    We have been working with Crece Virtual for several months now, and it has been a great experience. They built our website in Next.js, and it turned out super fast and professional. The best part is that they didn't leave us on our own after delivery: every month they make updates and improvements, and when we need something urgently, they always respond very quickly. Their support has been impeccable. In addition to the website, they manage our Google Ads campaigns and SEO. Honestly, everything has worked very well. The campaigns bring in good leads and have us well positioned on Google and Bing. They are very professional but also very approachable, always explaining everything clearly. I recommend them without hesitation.

  • Rafael Castaño

    November 2025

    We hired Crece Virtual to redesign our corporate website and improve our SEO. The result completely exceeded our expectations. The design is elegant, professional, and conveys the seriousness we needed as an environmental project. Navigation is intuitive, and our clients can easily find the information they're looking for. Regarding SEO and ads, we now appear in the top Google results for the searches that matter to us. The team was incredibly professional, met every deadline, and was always available to answer questions. It's clear they know what they're doing.

  • IVAN BLANCO

    November 2025

    We're currently working with the Crece Virtual team on both web design and Google Ads campaigns. The site looks very professional, and the SEM campaigns are consistently generating high-quality leads. What I value most is their transparency: they explain everything clearly, send detailed reports, and are always optimizing to improve results. They're experts at what they do.

  • Juan Jose Cano Giraldo

    November 2025

    They designed a corporate website for us, optimized for local search. The SEO is flawless; we appear in the top results. Website traffic increased by 350%. Excellent service, support, and monthly follow-up.

  • Litografia Azabache

    April 2024

    We want to express our complete satisfaction with the work done by Crece Virtual. They developed a digital business model for us that included creating our website and managing our Google Ads campaigns. Their customer-centric approach and attention to detail impressed us from the start. The website is exceptionally well-designed, and the Google Ads campaigns generated a significant increase in traffic and conversions. We would recommend Crece Virtual without hesitation.

  • Tomás Vélez

    February 2024

    Crece Virtual has become our greatest ally. They are incredibly creative in their web design and have given us a unique online presence. They are experts in Google Ads and significantly increase your business's visibility. Furthermore, their specialization in software development allows them to offer customized solutions. With Crece Virtual, you're on the right track if you're looking to expand your online presence to more leads and different markets.

  • Adriana Hernandez

    February 2024

    Recommended, they designed the school's website, provided technology training (software) to the entire staff, and were extremely responsive and fast.

Node.js FAQ

Node.js or Python for my backend?

If your backend spends most of its time talking to other services (APIs, databases, webhooks), Node.js is efficient and shares a language with your frontend. If it spends its time computing or analyzing data, Python has better tools. On mixed projects we keep integrations in Node.js and analysis in Python.

Is Node.js good for real-time features?

Yes. It handles many simultaneous connections on modest resources, which is why it’s common for chat and notifications. You don’t always need your own WebSocket server, though: in our CRM, new leads show up instantly through Supabase Realtime, with no socket infrastructure for us to run.

How do you handle queues, retries and errors?

It depends on the workload: durable steps that resume where they left off for long workflows, capped scheduled retries for recurring jobs, and unique keys for anything that must never be duplicated. When an outside service fails, the system takes a defined fallback, like moving a chat to WhatsApp, instead of hanging.

Which Node.js version do you use?

We recommend LTS (long-term support) releases only. Odinoa, for example, runs on Node.js 24. If your app is still on Node.js 20 or older, it no longer gets security patches, so the first step is auditing dependencies and planning the upgrade.

Can you work alongside our in-house developers?

Yes. We work remotely from Colombia, on UTC−5 all year, which matches US Eastern time in the winter and Central time in the summer. We can work through pull requests in your own repository, in TypeScript, so your team can review and own the code.

Which systems need to start talking to each other?

Tell us which tools you use, what data has to move between them and how often. We’ll explain how we’d build it in Node.js, where it would run and what it will take to maintain.

API docs or a sample payload help us scope it faster.

We use cookies

We use cookies and similar technologies to improve your experience, personalize content, and analyze our traffic. By clicking 'Accept all', you consent to the use of all cookies.