5 ms·
Show HN: Software Freelancers Contract Template
I started working as a freelancer [in Finland] a year ago and was surprised to learn that no decent contract template was available for direct assignments. There were some free contract templates available for intermediated assignments, but not for direct assignments. The "golden standard" of contract templates in Finland is an extremely heavy-handed and expensive template that costs ~500€ PER YEAR to use. Personally at the time I decided to just do a DIY contract for my first freelancing project.
Over time, as I got more engaged in the Finnish freelancing community, I realized that many people struggled with the same issue. After discussing this in our freelancing co-op Ohjelmistofriikit, we decided to invest both time and money into solving this problem. We decided right from the start that we were gonna open source everything and give it out for free.
We first developed a traditional document template in collaboration with a law firm. After that we developed a web generator that makes it easy to fill out the template. The user flow of the generator is designed to eliminate boilerplate-type work (such as hiding sections instead of showing "skip this section if condition X does not apply to you") and also to reduce mistakes users might make when editing a traditional document template (such as copypasting something incorrectly).
Although the legalese is designed for the Finnish jurisdiction, the contract template can be useful as an example for similar work in other jurisdictions.
Go ahead and draft a contract right there in your browser!
- chickenzzzzu 1y agoHow does one get inbound/outbound leads for hourly or project work from companies that aren't scammers or tirekickers?
- baobabKoodaa 1y agoFreelancers mostly work intermediated assignments rather than direct assignments. These intermediators have put up what are essentially job boards. If you are well connected, you can get direct assignments via your contacts, or by reaching out like traditional sales work. If there are some avenues to get leads for direct assignments, I would be really interested to find out!
- chickenzzzzu 1y agoThanks for your feedback on this :) In the USA, if some big and usually "non tech" company like McDonalds or T-Mobile wants to staff a whole project with programmers, they will usually have a relationship with someone like Infosys, Tata, Slalom, perhaps even Hitachi or Tech Mahindra or Accenture/Deloitte. These companies all pay you like a regular employee so you don't need your own drafted employment contract or business entity. If you howver have a github/youtube channel/website where you make and release your own software, and someone contacts you saying "hello we want to pay you to add more features and or fix some problem for us", then you will need a contract and usually a business entity unless you don't mind being personally sued into the ground. Such reachouts are very very rare unless your software has gone viral in the right circles, but I personally know at least 20 people who make a full time living this way. It seems pretty unenviable, and corporations whose email domain you would recognize routinely pull support or play egregious games with the definition of done. No cure for life, I guess :)
- baobabKoodaa 1y agoLarge consultancies like Tata also operate in Finland + we also have a bunch of our own consultancies that operate in this manner (their consultants are regular employees of the consultancy). Earlier when I mentioned job boards for freelancers, it is particularly these large consultancies that subcontract down to freelancers via job boards (they try to fill positions from their bench, and when they are unable, they subcontract to other consultancies or freelancers).
- chickenzzzzu 1y agoNice! In the US that still happens a fair amount too but I think as the industry has developed it has become much more rare than before. Athe keyword would be "corp to corp" employment, where you as the programmer either have an LLC, s-corp, or c-corp. But with the amount of accountant overhead and government fees you have to pay per year (including to shut down your entity when you are done), it becomes a bit pointless and there aren't really magical tax savings to achieve that I know of unless you are like, really good at deducting things and surviving IRS audits. In any case, it is rare for corporations to even offer it, but maybe in some super niche areas I'm not aware of, there could be good advantages. Still I think the hardest part is making and maintaining quality connections with people who value your skills :)
- deleted 1y ago[deleted]
- Oleh_h 1y agoThat’s a useful thing.
- trallnag 1y agoWhat type of contract is most common with software freelancers in Finnland? In Germany we usually differentiate between getting booked by the hour or goal based contracts. I think in the last decade(s) the trend has drifted towards the former. Note that I'm probably using the wrong English terms to describe this
- baobabKoodaa 1y agoHour based contracts are by far more common than goal based contracts in Finland. Both types are supported in our template.
- psyklic 1y agoNice job! As a US-based consultant, I've found it's always best if you immediately suggest a contract. This way you can ensure it starts with terms favorable for you. I've also found it's pedagogically helpful to have two versions of each contract, a consultant-favored and consultee-favored. This way you can understand how each clause may be tweaked to benefit each party. For example, this book does this (US-based): https://www.amazon.com/Consultant-Independent-Contractor-Agreements-Stephen-dp-1413331017/dp/1413331017 https://www.amazon.com/Consultant-Independent-Contractor-Agr...
- baobabKoodaa 1y ago> helpful to have two versions of each contract, a consultant-favored and consultee-favored Or, even better, instead of having only two versions of a contract, we can offer this choice on individual clauses within the contract. On some clauses the parties may choose to go with consultant-favored option whereas on some other clauses the parties may choose to go with client-favored option. This is what we ended up doing with the generator :)
- srameshc 1y agoVery well done. Since this is open source, it can be customized further to make it country specific with contributions.
- vedmaka 1y agoThat's very helpful! Do you have any plans to open-source this?
- baobabKoodaa 1y agoEverything is open-sourced: https://github.com/Ohjelmistofriikit/contract-generator https://github.com/Ohjelmistofriikit/contract-generator
- sneak 1y agoThis is designed only for Finland. The jurisdiction popup lists only Finnish options. It should probably be clearer that this is only useful for Finns.
- baobabKoodaa 1y agoThe big text below the title says "Legally sound contract for direct assignment between freelancer and end client in Finland". I also explained the connection to Finland in OP and explained in OP why it might be useful for persons outside of Finland.
- tommica 1y agoWould love these points fulfilled: 1) See how many steps there is in total. 2) Some "info" about the boxes - for example, what does "reference rights" mean? 3) Downloadable examples to see what is being generated in the first place. 4) Dispute resolution should also have a "Other" option that allows the user to manually input a custom value. Otherwise it seems a like a fantastic thing! And thanks for making it free!
- jokethrowaway 1y agoNot OP but 2) You can tell you worked for ClientCompany on SpecificProjec
- tommica 1y agoOh - thanks for the info!
- baobabKoodaa 1y ago1) There's approximately 10 steps. The specific number of steps depends on input choices you make. For example, if you choose project-based billing, there will be fewer steps than if you choose hourly billing. As soon as you begin filling the form, there is a progress indicator visible at the bottom, giving you a rough percentage of how much work you still have to do. 3) Downloadable examples to see what is being generated: sample output links are already on the landing page. You can ctrl+f to "The PDF might look like this." 2) You can look at sample output to get more information about what the boxes mean. We made a design choice to avoid legalese text in the UI. Reference rights mean: The Supplier has the right to reference The Client in marketing as The Supplier’s customer. 4) Possible choices for dispute resolution are courts in Finland and arbitration. Before the summer we discussed internally whether we should include arbitration as a choice. We ended up deciding that we won't allow our users to choose arbitration. Since there are no further valid options for dispute resolution, we won't add an "other" option. Thank you for the feedback!
- tommica 1y agoThanks for the reply, it seems that I was glancing too quick on the site then. And the reasoning for avoiding legalese makes sense.
- davzie 1y agoI’m gonna do it I’m afraid and plug my own UK based one (it is paid though): https://davzie.com/products/contracts https://davzie.com/products/contracts
- reactordev 1y agoIt’s missing another option. Contract for a date, for a set amount of hours, until a completion date. There’s an hours version but it’s based on weekly hours, not total hours. There’s one based on date but not taking into account hours.
- baobabKoodaa 1y agoCould you clarify what you mean by "weekly hours, not total hours"? If you input weekly hours and a completion date, doesn't that achieve exactly what you want? The contract will be valid until the date that you specify, and during the time that the contract is valid, you can charge approximately the amount of weekly hours specified. For example, if you have agreed to charge 40 hours per week for 4 weeks, then that is the same thing as agreeing to 160 hours in total. The wording in the generated contract is such that you don't have to work the exact same amount of hours each week, you can work more during one week and less during another week. Perhaps you mean that you want to lock down an exact, specific number of hours, rather than allowing any sort of flexibility on the total number of hours? This would be better suited for the "project based billing" option, but as you said, that one doesn't have the option to set a completion date. The reason why it doesn't have the possibility to set a completion date is that it would create an ugly contractual situation in the case where the deliverables are not completed by the agreed-upon date.
- ChrisMarshallNY 1y agoIn the US, dates are quite important on all contracts. I've been told that if I don't have clear dates, my contracts could get nullified in court.
- baobabKoodaa 1y agoSounds like this is a difference between legal systems in Finland vs US. In Finland it's okay to sign a contract that remains in force indefinitely.
- 1y ago
- mitjam 1y agoBitkom, the leading German digital industry association, offers general terms and conditions templates (https://bitkom-consult.de/muster-agb https://bitkom-consult.de/muster-agb) and a guide for service contracts: https://www.bitkom.org/sites/main/files/2021-02/praxishilfe-ausgewogene-vertragskonzepte.pdf https://www.bitkom.org/sites/main/files/2021-02/praxishilfe-...
- gwbas1c 1y agoI looked at the sample: > This contract was created using ohjelmistofriikit.fi contract template. Very good. Consider having some kind of version information, such as a date (more human readable) git commit id (unambiguous), or just 1.0.0. Assuming your contract becomes popular, it's easy to just see that "oh, this is the ohjelmistofriikit contract version 2" instead of reading every word.
- baobabKoodaa 1y agoHmmh. We have to also keep in mind that there are various customization options in the form. So even though someone might see "oh, this is ohjelmistofriikit contract", they should read through, because the customization options change the contents of the contract significantly. We can't solve this by adding git commit info or similar versioning.
- gwbas1c 1y agoThen you can list all the options in a concise manner.
- baobabKoodaa 1y agoI don't know exactly what you're asking of me. We already released the GoogleDoc that has all the options. It's linked on the landing page. It's the most concise way of expressing all the possible options in the generated contract. We don't want the generated contract to look like that, as that would defeat the whole purpose of the web generator. Alternatively, one can step through the web UI flow to see what all the options are without the legalese.
- gwbas1c 1y ago> I don't know exactly what you're asking of me. You'll "get it" once you start bringing in open-source libraries in a project where the lawyers need to screen them. Often, the lawyers will says, "these licenses are good, these are bad." Then you pretty much know what you can grab because most projects just pick from a set of well-known open-source liscenses. What makes it complicated is if you try to grab an open-source project that writes its own license (or otherwise uses one that isn't well known.) Then the lawyers need to read the whole thing. --- So, assuming your contract becomes common, people will say things like, "We're working with the 2025 ohjelmistofriikit.fi at XX an hour, open commitment, ....", and not have to read the actual contract, because it's so common that everyone already knows what it means. (Kinda like releasing open-source software and saying, "I'm using MIT" or "I'm using GPL" and everyone knows what you're talking about.) Make sense?
- gwbas1c 1y ago(In the US), right when I was out of college, an entrepreneur tried to hire me as a consultant to write software for a device they wanted to sell. I started reading the contract they sent me, and it didn't make sense. It stipulated that I carry liability insurance, which doesn't make any sense when writing software. I decided to Google a phrase or two out of the contract, and I found nolo's ("No Lawyer's") template contract for hiring a contractor to do work on a home. I decided the guy wasn't savvy enough to work for and thus I walked away.
- deleted 1y ago[deleted]
- slackfan 1y agoNolo is a part of the Latin legal term "Nolo Contendre" ie, "I do not wish to contend". I would recommend you seek an attorney's help when reviewing any contract, even if it was a templatized one to avoid such linguistic mistakes in the future.
- ska 1y agoFWIW professional liability insurance absolutely can make sense, even be necessary when writing software, depending on the nature of the contract and your overall responsibilities.
- baobabKoodaa 1y agoSure. But the point in parent post was that someone copypasted a home contractor template to use for a software contractor.
- jpalomaki 1y ago"IT 2022" [1] the mentioned "gold standard". The benefit is that these are in general well known in the market, so they might not require that much review from the lawyers. These are not just for consulting, but covers also other IT related topics (depending of type of deal you decide which parts to include). [1] https://it-ehdot.fi/briefly-in-english/ https://it-ehdot.fi/briefly-in-english/
- epolanski 1y agoAs a freelancer I consider contracts little more than good intentions on client side, especially as soon as you cross borders. As an European I ain't bothering suing you in the US over few thousands of $, a lawyer would be more expensive than letting it go. On the other hand I take my obligations quite seriously. Have to say, never had one bad experience in my life, worst that happened was getting paid 10/14 days late. Getting customers that mean business is the hardest part, lunatics think I am applying for a full time position and making me go through 2/3 rounds of interviews and asking me to implement Levehnstein distance or something to do QA and write E2Es at their scaleup are out of their mind.
- prasadjoglekar 1y agoIn general, contracts often are a good leading indicator of how a counterparty thinks and is likely to behave. Do they start with egregious terms and conditions, do they flex on some of those are all good signals. One example: does the counterparty start with a one-day NDA or a mutual NDA template.
- ska 1y agoI presume you meant one way NDA, your overall point is a really good one. Contracts are very useful as a leading indicator of how the counterparty thinks about the relationship.
- baobabKoodaa 1y agoI've never seen or even heard of one way NDAs.
- prasadjoglekar 1y agoIf you go interview at a Facebook office, you'll be asked to sign one before they let you in. Basically - "we'll tell you stuff. That's confidential. You tell us stuff. That's not confidential".
- givemeethekeys 1y agoCharge by the day. Offer a 10% discount on your hourly rate to sweeten the deal.
- dave994 1y agoPretty useful actually!
- passenger09 1y agoAs there might be some freelancers around here - i have an interesting topic for you: EU VAT validation and calculation via (python) API -> https://vatifytax.app https://vatifytax.app
- mmmmbbbhb 1y agoFrankly my contacts are of form "you pay 50% up front, rest after," and never had an issue. Perhaps luck, but in the first place I'd never pursue legally so I don't care at all.