Improving Product Release and Functionality

Igor Naverniouk

Software Engineer at Apple



A common error in releasing a product is doing so with an excess of added features that nobody is going to use and subsequently, wasting time.

Actions taken

  • Launch the first version of the product and start learning from it.
  • Get the absolute minimum necessary into the hands of users and start iterating.
  • Make changes with the feedback that you get from users. Do so in a way that it remains simple and modular. It should be organized in such a way where you can have pieces that can be removed and replaced separately.
  • Use shortcut decisions to help you make changes without disrupting the entire code process.

Lessons learned

  • It is better to give someone something that isn't good enough and have them tell you that directly, than to give them something that they do not need.
  • Most users understand really well, that when they get new software, it will be beta and that there will be a follow-up conversation with the developer.
  • If the code is heavily intertwined it becomes increasingly more difficult to make changes.
  • If you can make a shortcut decision in order to change the internals of code later, while keeping the API the same, you will be able to manage the technical debt aspect.
  • Most of the time you will find out that your short cut decision was actually fine and you can live with it for many years. Once in a while, however, you will see that your decision has become such a thing that you will have to make a choice to improve it, without redesigning the entire thing.

Be notified about next articles from Igor Naverniouk

Igor Naverniouk

Software Engineer at Apple

Software Development

Connect and Learn with the Best Eng Leaders

We will send you a weekly newsletter with new mentors, circles, peer groups, content, webinars,bounties and free events.


HomeCircles1-on-1 MentorshipBountiesBecome a mentor

© 2024 Plato. All rights reserved

LoginSign up