Testing
Testing software is of utmost importance and it is impossible to say it enough. Forget the myth of the 10x developer: the real hero of the next era of industrialized software is the QA engineer! Again, this is a huge subject that would be worth another book talking about testing strategies, shift-left campaigns, security and performance, and the balance between unit/system/integration/end-to-end tests, but this is not the right place to do so, and I will therefore concentrate on the part of testing that is linked to business/IT alignment, and that means focusing on the contractual interfaces between the modules, namely the APIs.
Testing at the API level
Although other tests are also important and there should be a range of different types of tests to ensure the right coverage, testing at the API level is certainly the most important type to invest in when building an API-based information system. Indeed, services are related to one another, so testing them right at the...