Software Development

Software should fit your business. My development approach makes software that matches your needs. From a full-fledged software application to a simple backup script, each needs to add value to your business. Many years of experience as a developer enables me to craft the software solution that you need.

Development Services

I work with the customer to define the problem to be solved. Then I begin an iterative process of analysis, design and coding. Customer feedback ensures that the process remains on track.  And testing is an essential part of this process. Once complete, the application can be deployed and documentation finalized. I am then available to maintain the software should your needs change. If desired, I can work within a more traditional development process. Or simply consult on one stage of the overall process.

In summary, my services within the development process cover:

  • Specification
  • Analysis
  • Design
  • Programming
  • Testing
  • Deployment
  • Documentation
  • Maintenance
  • Review

These are a lot of steps: the actual process is more fluid than that, as I prefer to work in a more Agile fashion. While the traditional (and now old) waterfall terminology is useful for breaking down the steps, the customer-focused, iterative approach that Agile brings tends to deliver better results.

Languages and Environments

I have had experience with many programming languages and technology stacks. Some of my key areas of proficiency are:

  • Perl
  • PHP
  • Shell Scripting (Bash and similar)
  • the LAMP stack
  • C
  • Python

However, the major thing that I bring to the development process is extensive experience in programming. Knowledge of language specifics do enable quicker development. But many years of programming mean that the right things get written. In the long run that leads to a better and quicker development of your business solution.