Stop thinking that every successful company needs a full-time in-house engineering team. They don't, and here's why:
One: Engineers are expensive and need a lot of supervision. Without direction from project managers, they might focus on parts of the system that don't need it or spend time improving code that doesn't change business outcomes.
Two: Engineers can lose motivation, especially after the first year. They may start doing the minimum required. Any task, project, or feature you give them can become repetitive because it's the same technology and similar requirements. This affects their productivity.
For businesses where technology isn't central, having developers on staff all the time is unnecessary. Instead, think about hiring a specialized team of software engineers only when you need them. This way, you avoid overhead costs and pay only for what you need.