Start off with an in-person meet-up or phone chat with the client to gather and understand the project objectives. Gather the project requirements and provide suggestions as needed.
Create UI and artifacts of the project. Ask client for feedback. Make modifications to project based on client's feedback. Gather tools for project and kickoff for coding.
Start coding iteration of the project. Code and integrate. Test to ensure smooth integration and quality code is produced. Perform various tests and make bug fixes.
Perform final testing to ensure quality code was produced, free of bugs and meet project requirements. Make fixes as needed and deploy finished project to production. Provide continued support.