hacky-code-but-clear-interfaces

I now favor code that has a lot of independent modules that can have hacky inner code but that must have clear, explicit and preferably simple interfaces. The project's manager role is to design these interfaces and has the last work on their implementation. (#)

In talk-micro-service-architecture-fred-george he talks about small micro services where you can write them however you want because they are so small. The services, by definition, I have very clear interfaces.