Публикация Школы траблшутеров

Quit complaining and nagging – start contracts’ debugging

Время чтения: 9 мин 25 сек
21 ноября 2023 г. Просмотров: 184

Алгоритмы, Право | Олег Брагинский, Максим Голубь

If we don’t work in legal or finance departments, when it comes to dealing with the contracts we assume our job is to briefly read them, sign and keep fingers crossed. With Maksim Golub and founder of School of Troubleshooters Oleg Braginsky, we act as a human debugger while reviewing paper-based programms.

Engineers have a powerfull mechanics called debugging. By default, they look at the things anticipating them to break, have bugs or even vulnerabilities, through which it could be exploitted. Contracts are no different from the program, they have their actors, variables, constants, conditions, inputs, outputs, scopes.

As a good software developer working in the team or technical engineer, building a hardaware, don’t completely put trust to someone else and always check the work at the final stage. This is there a code review by peers or quality check at different stages. Even if you a lonely wolf, act as your own strict auditor.

The beauty of posseing different constelations of skills will allow us to think of the research object from a different angles finding unusual ways to represent the problem. Think of it as the game where the character cannot go through the gate as mortal, but they can easily pass by jumping into the demention of spirits.

The process starts witth the inventorisation. Create a list of services you and your team use. If there is no owner, clarify it with peers to make sure each contract has an asignee.Collect documents, unify file names, put them into a single place. Do align with Legal, Finance teams to cordinate efforts and avoid clashes.

Time for debugging. Pay attention to the measuring units. They should be specific. For instance, the duration of the process is 45 days, but it could mean business, astronomical days, or public holidays. As an extra layer consider the territory or regional nuances as there might be deviations in the interpretation.

If there is a date in a contract, it could be something that you as the human may overlook while executing the contract. In one company there was a due date of the renewa, and the date of sending a notification about cancelling. Capturing this early saved around 14 000 USD with a single email to the service provider.

Pay attention to all of the external links in the document. The caveat is that the third party can update referring resource any time and it will be a legal action, unless it is not allowed. Think of it as the library in your code controlled by it’s createor. The optimal approach is to incapsulate external links as appendixes.

There might be a combination of slowly-ticking bombs and external links when the timer located on the web-site inside of the Terms and Conditions, having a generous heads-up timeline which you may be reading with less attentiion if read at all. Spotting this early allows to initiate the convesation in advance.

There might be cases when the document is already being signed and you may suspect that it was modified by the third party. There are few ways to to spot the differences. Use an onine-archive service like Archive.org to see different versions. If the site is popular enough, there will be multiple updates for review.

Depending on the web-site engine you may see the modifcation date on the page itsef. There is such thing as meta-data, which means data about the data itsrelf. Using Object Inspector, you have a chance to find what you look for. It might be possible to find the original document, but it will require a different skillset ;)

If the the text file is downloadable, you can use local tools to analyse it’s internal data. For example, pictures and PDF files store the info in EXIF- Exchangeable Image File Format, allowing you to extract valuable knowledge from the document. Apps like ExifTool or any other can crack this task as a piece of cake:

Assess the liability. What will the counter-party obliged to do if things go wrong. Pay a special attention if their service is mission or business critical. Measure liability not only as the binary metric – whether it exists or not, but also check it’s scope and conditions: what are SLA’s, recuperation, damage mitigation models.

When comparing two similar processe you see that counter-party will owe you less or nothing, it is an assymetry. For example, when renting an apartment in Singapore, you’d have to pay cerain percentage for each day of delay while owner only obliged to return your deposit within two weeks with no repercations.

Hidden favours. Vendor may allow themselves to use the partnership to their benefits for other marketing and sales activities, capturing your permission in the contact. Vice versa, there might be an obligation to use their attributes on your product as part of the contract. Both could be used as levers in negotiations.

Check that signatures are valid. Consider regions specific for both for vendors and yourself. In some countries the image of signatire may not have a legal power, should be issuesd by the authorized entity, Make sure that signing person has a proven permission to sign documents, and it’s reflected in the contract.

Unidentified objects. Make sure that whatever is mentioned, should be explictely. Don’t take it as granted when you see words as License, Service Agreements and so on. Each object should have it’s definition, scope, the areas of application. Best place to declare such things is at the beginning of the document.

Limited flexibility during the usage cycle. There might be options where your service would be moved to the higher tier or charged a higher rate due to the increased consumption. In case the level of usage is lesser than expected, you may have to wait for the next billing period before downgrading to previous level.

And for the last part a portion of tips and tricks that could help making debugging and executing processes of a contract smoother:

  1. Use a single storage for the contracts.
  2. Inventory services that you or your team use.
  3. Get in touch with the vendors if there is no clarity.
  4. Use a shared email to receive updates from the vendors.
  5. Inform and involve finance or legal team about contract activities.
  6. Regulary audit existing contracts to actualise conditions and the dates.
  7. Set a single end-point for communications, should not a personal email address.
  8. Include handover and audit of contacts into the onboarding and offboarding processes.
  9. Don’t hesitate to inform about voiding the contract, there always will be a chance to resume.
  10. Start with thinking that you already went to the court and need to use the contract for the defence.