OpenFaaS is an open-source framework for running serverless functions on infrastructure you control. A function is an ordinary container image that speaks HTTP; OpenFaaS supplies the gateway that fronts it, the provider that schedules it, and a watchdog process inside the image that turns an incoming HTTP request into either a forked process or an in-process handler call. Because the unit of deployment is a container rather than a vendor-specific archive, anything that runs in a container can be a function — Go, Python, Node.js, Java, .NET, or a shell script.
There are two ways to run it, and they share the same function images and the same stack.yml. On Kubernetes, faas-netes reconciles a Function custom resource into a Deployment and a Service in the openfaas-fn namespace, and the Helm chart installs the gateway, Prometheus, NATS and the queue-worker alongside it. On a single machine, faasd runs the same gateway and the same images directly on containerd with CNI networking and no Kubernetes at all — which makes it viable on edge hardware and small VMs where a cluster would be absurd.
Teams reach for OpenFaaS when they want the serverless developer experience — write a handler, run faas-cli up, get a URL — without moving workloads into a managed FaaS product, or when the workload has to sit inside a private network or beside data that cannot leave the estate. Asynchronous invocation through NATS with callback URLs, event connectors for cron, Kafka and MQTT, and Prometheus-driven autoscaling including scale-to-zero are what turn it from a demo into a platform.
Why this skill matters now
Serverless stopped being synonymous with a single cloud provider's function service. Teams that adopted managed FaaS early are now dealing with the consequences — per-provider packaging, cold-start behaviour they cannot inspect, and functions that cannot be tested locally in the same form they run in production. Running functions as containers on infrastructure you already operate removes most of that.
The second driver is placement. Regulated workloads, on-premise estates, factory-floor and retail edge deployments all need event-driven compute that runs where the data is. OpenFaaS and faasd are among the few options that give the same programming model on a Kubernetes cluster and on a single ARM box at a remote site.
The skill organisations hire for is not writing a handler — that is an afternoon. It is designing the watchdog mode and concurrency limits correctly, choosing synchronous versus asynchronous invocation, setting timeouts consistently across the gateway and the function, and making autoscaling and scale-to-zero behave under real traffic instead of thrashing.