I have been working in software development for almost 20 years. During that time span the development tools, languages, and methodologies have changed but the underlying principles of successfully completing a software project remain mostly the same, planning, communication, and testing.

The planning or discovery phase is the first step in any software development. During planning the client and developer will carefully go through what problem(s) the new software is trying to solve. From this information a well thought out set of features will be created.

Communication is a key component to a successful planning stage.Clients need to clearly communicate the desired functionality of the new software. Developers need to work with the client to give an accurate estimate of the cost and time to create the software.

Testing or Quality assurance is another pillar in the software development process. All developers strive to write bug free code, but in the real world that is not realistic. Testing by a qualified third party tester is the ideal situation, but client testing is also an option for budget conscious projects. Regardless of the method, testing the code before putting it out into the wild is a necessary step to insure your new software functions as desired.

I have experience building many different types of software. This includes but not limited to: 1) websites, 2) web applications, 3) mobile sites, 4) mobile applications 5) desktop software.For a more in-depth look at my software development skill set please click here.