How to get the most out of working with freelance iOS app developer Jean Tantra, and what to expect.
Working with a remote iOS app developer
- I can work as a solo programmer, or as an added member of your team.
- My point of contact in your company will need at least 15 minutes per day to deal with me. That is in addition to any time spent if someone at your end delegates what I do.
- I will need do a verbal check-in at least every other day by phone or Skype or equivalent. I prefer Skype, as it provides a history and a way to show each other screen snapshots.
- Each check-in is basically a status review of what’s being worked on, what comes next, which items needs more research before I can do them, and which things are stopped pending more information from your end.
- Program snapshots for QA testing: I will periodically give you snapshots of your app’s functionality. You will need to test them and give me timely feedback. If you don’t have QA people and need me to do extensive testing, you will need to budget for a tester.
Billing and terms
- I bill first-time clients after the first 20 to 40 hours, due net 7.
- After that, I prefer to bill weekly, due net 15. For established clients, I can bill every 2 weeks at net 15. Monthly billing or net 30 is not available at this time.
- I consider a source code snapshot a deliverable, and will bill you.
- I document code roughly equivalent to source code control Blame, which lets you tell who changed what when. If something breaks, you need to know when it broke.
- When dealing with REST servers, I prefer the data in JSON format over XML. I can deal with SOAP but would prefer not to.
- I am comfortable with hybrid apps built using both Objective-C and C and / or C++. A lot of junior programmers aren’t familiar or comfortable with C and C++.
- I am big on Apple best practices. Because I have decades of Apple SDK development experience, I use these best practices as defaults. (Commonest UI error I see: no Back button in an iOS / iPhone app design! Fortunately, that’s easy to fix.)
Tools that speed up remote iOS app development
- Check-ins with screen sharing save time. Skype is good for chat messaging and screen sharing. TeamViewer is like Skype, and also lets you puppeteer the other person’s machine.
- I prefer source code control. I can work from program snapshots.
- Project management tools such as JIRA, Trello, or Bontq help development a lot. (Bontq is only usable if I am an admin.)
Best practices for working with a freelance iOS developer
- Provide clear design documents. A requirements document is good; a full-blown spec with wireframe is better.
- Number each line item in your design document. This makes items easier to refer to, and keeps everyone clear on exactly what we are talking about.
- Develop your design and spec before programming starts. Changing the design or adding features later will add cost and development time.
Have realistic expectations
- Designing for the iPhone can be like fitting an elephant in the glove compartment. Designing for iPad is less constrained because there is more screen real estate.
- Designing an iOS universal app for both iPhone and iPad is over twice as complex as designing for one device because of multiple sizes, layouts, and enough additional complexity that things drop off the developers’ short-term memory.
- Dealing with error conditions can easily double the size of a task. (Example: Your iPhone app is supposed to talk to a server, but the server isn’t actually there.) Errors get more complex to the degree that your software talks to something outside the program that could break.
- Software is complex. Expect surprises.
- I don’t know everything. Programming expertise is a constantly moving target.
- Over 25 iOS iPhone apps I worked on made it into the App Store. As an iOS contractor, I have a proven track record of successfully developing Apple iOS apps like yours and getting them finished, debugged, and shipping. Want to be the next success story?
Ready to take action on your software?