Freelance Work
Why hire a freelancer?
Developing an app for the iPhone or iPad requires specific expertise. The tools are different: apps are written in Objective-C and Cocoa Touch. The platform is different: mobile apps have other constraints and requirements than desktop or web applications.
You can either pay for someone in your organization to learn a new programming language and API, what is and isn’t possible with Apple’s hardware and software, how user interaction is different on mobile devices, and how to market to the App Store—or you can hire an expert who already possesses this knowledge and who can put it into practice immediately.
Why hire me?
I love to write awesome software!
I’ve been programming for more than 20 years. The past 2+ years I’ve specialized in iPhone and iPad development because these devices are incredibly cool.
I can do all-round development: analysis, design, programming, testing and maintenance. I can provide or tweak your artwork if necessary.
My focus is on doing high quality work. When you hire me, you’ll be guaranteed a good working relationship, attention to detail, and a product we can both be proud of. I am only happy if the software is the best that it could possibly be.
My payment terms are flexible and depend on the requirements of the project. Both payment on hourly basis and flat rate fee are possible.
My background
Ever since my dad brought home a Commodore 64 in the 1980′s, I have been passionate about programming. I have programmed applications, utilities, games, libraries, compilers, mobile apps, websites, web apps, web services, databases, embedded systems… and much more. I love it!
My history:
- I have worked as a senior developer for an internet startup and an ISP
- I have been a self-employed shareware author for several years
- I have contributed to open source projects, among which the Haiku Operating System
- As an independent developer, I have several iPhone apps in the iTunes App Store, most prominently Reverse Chord Finder Pro
Some highlights:
- 20+ years of experience, professional attitude
- comfortable with many different programming languages and tools
- experienced user interface and user interaction designer
- specialized in iPhone / iPad mobile app design and programming
- enjoy working on highly complex projects
- focus on delivering quality work
- attention to detail
- fast turnaround time, but not at the expense of the end result
- I take pride in my work
- based in The Netherlands, Europe
See my portfolio for the applications that I have developed.
To take a peek at how I write source code, visit my page on GitHub where I publish open source.
How I work
When you hire me for a project, you are not just hiring a programmer but also an advisor. It takes more than just programming to turn your wishes into a good application. Bridging that gap is my expertise.
Besides masterful programming, a great app also needs a great design. I can advise you on user interaction design as well a visual design. There are specific constraints and trade-offs for mobile devices; I can tell you what they are and why a mobile app requires solutions that are different from desktop apps or web apps.
I will be glad to share my expertise with you. I won’t simply disappear for weeks on end to write code only to emerge when the product is finished. We will be in constant contact to work out issues and to come up with solutions. You get to see your app come to life and you’ll always be in a position to provide feedback.
At the beginning of the project, I will have to figure out what exactly it is that you want. You are an expert in your field but I am not. If we’re building an app that is targeted at a specific niche, for example construction worker safety issues, you will have to help me get up to speed. I need to understand the problem domain in order to turn your wishes into a working product.
Communication is paramount. Lack of it is the reason so many software development projects fail or are unsatisfying for the client. We don’t want that to happen! So we will have one or more chat or Skype sessions before programming begins to discuss the job and to get to know one another. I want to earn your trust and build up a good professional relationship.
I will pro-actively think with you
You are hiring a critical thinker. If you have already made a design for the app, I will evaluate it in order to make sure it is the best possible design. Often I will suggest alternative approaches. In the end it’s your app, so you get to make the decisions, but I want to help you make them as informed as possible.
There are often flaws in the specs that I am handed at the start of a project. That’s normal. It is incredibly difficult, if not impossible, to design a piece of software up-front and get it 100% right.
For example, if you are not an expert on interaction design, you may have sketched a user interface that is not optimal. A feature you consider essential may not be needed at all if the design is improved in some other way. Or you may think you need feature X to solve a certain issue, but in the my experience feature Y would work much better. A design choice you made may work well on a web-based version of the app but is a bad trade-off for a mobile device. And so on…
You’re hiring my expertise to find those issues and tell you about them.
So I will spend a lot of time in the beginning of the project to understand the problem that you are trying to solve, and to find the best solution possible. I will ask you hard questions, often about things you may not have considered before. Of course, we are in this together so you can draw on my expertise. I will work with you to ensure you end up with the best possible product. I see myself as your partner for this particular job and consider it a point of pride to deliver the best app that I can.
My approach to programming
Once development starts, I will take my time to build the foundations of your project. I work in small steps and after each step is complete it is tested and any bugs are fixed. I don’t wait with the bug fixes until the final testing phase of the app. Bugs are cheap to fix the moment you find them; they are much harder to fix later.
This step-by-step approach guarantees a high quality product with few defects that is easy to maintain and expand later. Progress might appear to be slow at first but rest assured that your app is taking shape, it’s just not very visible in the beginning.
Beware of developers who claim to work unbelievably fast. Quickly written code is full of bugs that are hard to find. When a developer rushes the development (because he is inexperienced, in a hurry, or wants to make a good impression), it may seem like the project is coming along quickly — but this is only superficial. There will be many delays later getting the bugs out. In the end the slow-but-good approach is quicker than flashy development; it just takes a little longer to see cool stuff on the screen.
I will be in constant communication with you. As the product starts to take shape, you need to give feedback on it. Are we still going in the right direction? Something that may have seemed wonderful in your design may be horrible once you actually start to use it on a real iPhone. This is why I work with milestones, short iterations of 1 to 2 weeks.
The initial “tap-through” version
The first milestone is what I consider the “prototype phase”. Here we will work out any kinks in the design. The delivery at the end of this milestone is a “tap-through” version of the app. This version contains all the screens in the app but with fake data. You can tap through it on an actual iPhone or iPad to get a feel for using your app in practice. If there are any design issues that come up, then this is the place to fix them.
Only when you’re happy with how the app feels, do we continue to the next milestone. The first milestone often takes one to two weeks but for complicated apps it might take much longer. It’s the most important part of the project, because here we will find out whether your idea is actually going to work!
The first milestone is also a good place to find out if our relationship is going to work. It’s the most important milestone in the whole project because it affects everything that follows.
Building the app bit by bit
Slowly you will see your app come together as all the remaining features are implemented one-by-one over the next milestones.
I usually reserve the last milestone for polishing the app. This is where we put in the final graphics, texts, and animations, do an extensive test, and prep the app for submission to the App Store. Often taking care of all these little details takes up quite a bit of time, but they are what distinguishes a great app from mediocre ones. In these final stages of a project, I can often be found tweaking pixels and obsessing over getting animations and graphics “just right”.
During all of this, we communicate on a regular basis. I will send “Ad Hoc” builds of the app for you to try out on your iPhone or iPad. If you have a Mac computer and are comfortable with compiling apps, I can also send you the source code so you can try it out on the iOS Simulator.
In my experience, if we can maintain this kind of working relationship, you end up being a happy client with a great product and I end up being a satisfied developer. And maybe we’ll do business again in the future.
Why not use a cheap contractor from India or Eastern Europe?
No doubt there are many fine software developers in India and Eastern Europe. But they are not the cheap ones. As with anything, you get what you pay for. Software that is not 100% good, is 100% bad.
The source code to your app is a very important asset. If the source is not well written, then adding new features to your app will be very hard—and very costly. A bad code base will haunt your project forever.
I will provide you with source code that works, that is clean, and that is easy to maintain, so that your product has many years of life ahead of it.
Get in touch
Contact me to talk about your product and your plans for it. I’d be happy just to chat about your idea and the possibilities for turning it into an awesome mobile app. I hope to hear from you soon!