One of the consequences of making a rapid platform change is that you are often left with a certain amount of bad code, wrong decisions, and generally just things that you wish you could take a mulligan on. Learning new systems while having to use them in production situations can leave you feeling like you aren’t doing your job correctly.
The world, however, isn’t too interested in letting you catch your breath and fix some of those things and learn the systems better. So you have to muddle on and hope that you get a chance to put it right before you have so much debt built up that you are trapped in a prison of your own making.
Of course, EVERYONE has technical debt. No project is perfect from the very beginning (or from the very end most likely). The trick is to try and minimize how much you build up with they way you design and develop.