Questions to ask when joining a new company as an iOS engineer
What timezone will you be working in? Are all team members working in the same timezone? This is especially important; otherwise, you may end up working a 24-hour shift. Imagine if the person responsible for making code design decisions sits in another timezone or country; you will end up wasting a lot of time waiting for them to come online.
How long does it take for the app to run on the device from click to running mode? You don’t want to wait for a long time between runs. Less than thirty seconds should be fine.
When developing a feature, as a developer, how do you test it? Can we test each feature independently?
Red flags: If the developer says they need to run the app every time to test the feature, then you can figure out that the app is not modularized, and there are a lot of dependencies between modules.
Performance review, e.g., stack ranking (code review)? How is the bonus distributed, yearly or from the date of joining?
How large is the codebase? How is the code structured, e.g., PODS, Swift package manager? What’s the supported Swift version?
How much of the code is in Objective-C and Swift?
Time spend maintaining old code versus writing new features?
What’s the supported Xcode version and iOS version? Companies don’t upgrade their code base for a long time, so you might need to work on older versions of Swift.
On an average how many years does it take for an engineer to get promoted to Staff/Principal ?
In most companies, this is the highest level. From here, you can figure out how many years.