Start with proven experience, not the number of logos on the website. Ask for three or four projects that resemble your domain and your stack, and then find out which engineers actually built it. A serious vendor will introduce you to the tech lead. Evasive answers at this stage usually mean the delivery team is not the team you were shown.
The paperwork deserves a slower read than the pitch. Three sections matter more than the rest: ownership of the code, confidentiality, and notice periods and handover. Every artifact should transfer to you once invoices are settled, including source code, designs and outsource azure development infrastructure as code. Be careful with wording that keeps reusable components with the vendor, as this is frequently the dependency that makes switching painful.
Ask how they estimate. A credible estimate arrives with a written set of assumptions, a breakdown by feature or module and a range rather than a single number. A fixed-bid deal works only when the requirements are stable and documented; in any other case the supplier adds a risk premium and you pay for it anyway. A time-and-materials model moves the risk back to the client, so it needs a cap, regular demos and transparent reporting.
How the work is run matters more than the number of developers. Ask how much does it cost to build an app a new requirement enters the plan, who writes the acceptance criteria and what the QA setup looks like. A mature team will be able to demonstrate a working build every one or custom development vs saas ecommerce marketplace two weeks. Written acceptance criteria are your only real protection against the it-was-never-in-scope conversation.
Finally, think about the end of the engagement while the relationship is still good. Require that the code repository stays under your account from day one, and that a readme and web application development company architecture notes are kept current as the code changes. A vendor with nothing to hide will agree quickly; a long negotiation over it reveals a great deal.
