You need the best
The old days of build simple flash light and sound board apps are over. Users expect elegant, full featured bug free apps. If you are jumping into the app market or already have an app in the app store you know how important it is to protect your investment with having experienced developers that have time tested methodologies with proven results.
We have over 8 years of native iOS app development. Our first client was building Accor North America’s app for Motel 6. Since then Apple has continued to produce amazing new frameworks and libraries to help us build awesome apps for our clients. We strive to stay on the bleeding edge of mobile development by continuously learning, and adopting the latest best practices and tools Apple has to offer.
We specialize in
- Cocoa Touch
- Location Service (CLLocation)
- HealthKit integration
- Streaming/Recording video
- Camera integaration
- Augmented reality / ARKit
- Swift and Objective-C
- Xcode and insturments
- Background Activities
- Offline and local data storage
- Keychain secuirty
- App Extensions like custom keyboards
- Push and local notification
We have the opportunity to work with start ups, fortune 500 companies, enterprise teams, small and medium sized business all over the world. Those opportunities allowed us to learn what makes software teams successful. We have also learned that so many dev teams are managing constant dumpster fires and bogged down with unmanageable, and unstable codebases. Luckily we are smart enough to take notes and learn what to do and more importantly what not to do. Here are our 3 main principles for mainlining high standards and creating apps that are maintainable.
1 Test Driven Development
If computer systems built themselves, they would probably be perfect. Unfortunately, computers need people to tell them what to do. TDD reduces the number of bugs in production and improves code quality. In other words it makes code easier to maintain and understand. Also, it provides automated tests for regression testing.
2 Styles and Conventions
Writing software is definitely an art form. When you write code you are transferring your thought process and personality into the program. This can potential be a bad thing. What makes perfect sense to you can be vague and unmaintainable to the next coder on the project. To battle this we enforce strict style guides and conventions. That way no matter how many developers you have touch the project everyone understands what is expected and the code becomes a team collective effort instead of a bunch of individual ideas pulling in different directions. We use tools like Swift Lint to enforce these styles and conventions to achieve the following:
- Increased rigor, and decreased likelihood of programmer error
- Increased clarity of intent
- Reduced verbosity
- Fewer debates about aesthetics
3 Build Automation and Code Review
Once the code is written its time to bring all the processes together. Before any new code can be merged into the codebase we create a pull request. The pull request is reviewed, made sure that all style guides and conventions are up to project standards. At the same time unit, integration and ui tests are run to make sure any new code doesn’t break any existing features. Finally once the functionality is tested and code reviewed the code gets merged into the existing base code. After the merge we usually run a build automation script like Fastlane to automatically build the app and upload to TestFlight / App Store Connect for users to start using!
Commitment To Clean Code
When you combine the 3 practices above and make a commitment to keeping everything as clean and simple as possible, we can reliable keep a code base manageable and relatively bug free. It doesn’t matter if there is only 1 develop or 100, we will be successful if we maintain our standards, and can guarantee the codebase we create for you will be maintainable and expandable.
We can build anything
Over the years we have had some crazy demands and deadlines with lots of uncertainties. One thing that has always is certain is that if you can imagine it we can build it. We might not be the smartest or best looking 😉 but we can guarantee that we are the hardest working developers that has the highest level of commitment to completing and building the best software we can for our clients. If you are considering hire anyone to build your app give us a try, we will exceed your expectations.