 This paper proposes a systematic approach to guide the system architecture design of IoT-based smart cities. It begins with a feature-driven domain analysis to model smart city requirements followed by the design of a reference architecture for IoT-based smart cities. The architecture is modeled using selected architectural views while considering key stakeholders and their concerns. Additionally, this paper provides valuable insights into lessons learned and challenges encountered during the process of creating IoT-based smart cities. These insights can assist practitioners in developing such smart cities and pave the way for future research in this field. By following this proposed approach, smart city architects can design a robust and adaptable system architecture that can meet the evolving needs of smart city services. This article was authored by Bedur Tekinertigan, Omer Coxle, and Turgay Selik.