Wroclaw Sells Two Different Things at Similar Prices
Foreign buyers arrive here with one of two needs and often do not say which. The first is delivery: give us a problem and a budget, and come back with a working system that someone owns. The second is capacity: we have our own product leadership and our own backlog, and we need four more engineers who can start in a month. Both are sold from this city, frequently by the same firm, and the proposals look almost identical because both list profiles, seniority and a monthly rate.
Search behaviour reflects the split. People look for a software house and people look to hire developers, and those are not the same purchase. Capacity is cheaper to buy and much more expensive to buy badly, because it quietly transfers all product and architecture responsibility to you. Delivery costs more per head and includes people whose job is to argue with your scope. Decide which one you actually need, write it in the first line of the enquiry, and refuse proposals that answer the other question.
Most Engineers Are Contractors, and That Changes the IP Clause
The dominant employment arrangement in the Polish software sector is not employment at all. A large share of engineers work as self employed sole traders invoicing the firm each month, because the tax treatment is substantially better for both sides than a standard employment contract. Firms describe these people as team members, and in practice they usually are. Legally they are suppliers to your supplier.
That matters for three reasons. Copyright in software vests initially in the individual author, so your assignment has to reach that author rather than stopping at the company you signed with; ask to see the chain, and require it in writing for every person who touches your code. Notice periods for a contractor are whatever the contract says, sometimes a matter of weeks, so continuity commitments must be yours rather than inherited. And confidentiality obligations need to bind individuals directly, especially where they work with more than one client. Ask what proportion of the named team are contractors, and ask how the firm handles a contractor who leaves mid project. A supplier that answers this crisply has been asked before by buyers who knew what they were doing.
Attrition Comes From the Employer Down the Street
This city hosts engineering centres for large international product and banking groups, and those centres recruit continuously from exactly the same pool as the software services firms. A software house here is therefore competing for its own staff every month, and the competition pays in stability and benefits rather than only in rate. This is the single most useful thing to understand about delivery risk in a Polish engineering market, and it is rarely volunteered.
Ask the firm what its attrition looked like over the past year, at what seniority, and what it did about it. Ask how long the people proposed for your project have been with the company. Then make continuity contractual rather than hopeful: written notice of any change to named personnel, a paid overlap period between the departing and arriving engineer, and a replacement of equivalent seniority at no additional cost. Insist that architecture decisions, environment setup and deployment procedures are documented in your repository as work proceeds, so that knowledge does not walk out with a person. The firms with genuinely low turnover will tell you the number without being pushed.
Overlapping Hours Are Generous, So Spend Them on Decisions
Central European time gives a Western European client an almost complete working day in common and gives an American client a usable morning window. That is a real advantage over more distant sourcing markets, and most buyers waste it on status reporting. A daily call where someone reads out what was done yesterday consumes the overlap without using it.
Spend the shared hours on the things that only work in real time: reviewing a design before it is built, resolving an ambiguity in a requirement, watching a demonstration and reacting to it, making a decision that is blocking someone. Move status to writing. Agree in the contract how many hours of overlap you need and on which days, and be explicit about public holidays on both sides, since the calendars differ more than people expect. Note also that a meaningful share of firms here serve German speaking clients and have organised their working day around that market; if your own hours sit later, confirm the overlap rather than assuming it.
Contract Language, Governing Law and Which Version Prevails
Contracts are often produced in two columns, one in Polish and one in English, and buyers sign them without settling the question that matters: which version governs if the two disagree. Decide it explicitly. Decide the governing law and the forum as well, and be realistic about whether you would actually use the mechanism you chose, because an arbitration seat you cannot afford is not protection.
Then align the product with the same choice. Documentation, code comments, commit messages and ticket titles should be in one agreed language chosen for whoever will maintain the system in three years. Ask to see a sample repository rather than trusting the answer in the meeting. If your work touches personal data, remember that the supplier sits inside the same data protection regime as most European clients, which simplifies transfers considerably, but still requires a processor agreement naming sub-processors and setting breach notification timing that lets you meet your own duty.
Invoicing, Currency and Payment Across Borders
Rates may be quoted in the local currency, in euros or in dollars, and the choice is not cosmetic. Agree which currency governs, who carries conversion risk over a multi month engagement, and who pays correspondent bank charges, since those are routinely deducted from the amount your supplier expects to receive and then reappear as a discussion. For business buyers inside the single market, cross border invoicing normally runs under the reverse charge, so check that both tax registrations are valid before the first invoice rather than after it.
Tie payments to accepted deliverables rather than to elapsed time, keep a portion until acceptance, and agree defect severity classes with fix times and a warranty window after go live. For a capacity engagement, agree the notice period for reducing the team, since a firm that has hired against your contract will want protection and you will want the ability to stop. Put both numbers in the agreement at the start, when neither side is annoyed.
Testing a Wroclaw Software Supplier Before the Full Engagement
The cheapest diligence available is a short paid pilot with a real deliverable, run with the exact people proposed for the main project. Two or three weeks against a contained piece of work tells you more than any reference call: whether the estimates hold, whether questions arrive early or late, whether the code arrives with tests, and whether the person who impressed you in the meeting is the person who does the work.
Before that, send every candidate the same brief covering the business problem, the systems to integrate, the data protection position, the engagement model, acceptance criteria and support after launch. Keep the cloud accounts and the source control organisation in your own name with the supplier added as a collaborator. Verified profiles for software companies are listed on Edvido along with motion and interactive studios in the same city, and buyers comparing regional options can review the market up the river, the industrial belt nearby, or suppliers further east. When the brief is ready, put it to a shortlist in one pass so the responses arrive in a form you can rank.