We prefer not to use Interface Builder at Instabug, even with Xcode 9 and its enhancements, due to the difficulties in merging files and code reviews. This approach makes it harder to create reusable views and can lead to unreadable and unmaintainable UI code. While Interface Builder is an easier approach for beginners, we believe that writing all UIs in code provides more flexibility and readability. We cannot use third-party dependencies like SnapKit or PureLayout due to our preference for dependency injection, which complicates the process of passing parameters to view controller init methods. Ultimately, every team has different workflows and preferences, but we recommend using Interface Builder for starting iOS development projects.