Software Consulting

I specialize in web application development, both back-end and front-end, and also webservices, systems integration, devops, and databases.

I’m usually able to take a web site or application from idea to MVP – initial build, and hosted – in just a few hours.

In my portfolio section, I’ve begun posting about some of my client projects.

Consulting

Process

My preferred style of work is to closely interact with the important stakeholder(s) in the project.

I’ll start with an initial consultation to understand the outcome that is desired, and context for the project.

Development will alternate between discovering requirements and implementing features.

I look for the biggest impact for the smallest initial effort as the starting point. This gives us a good way to initially test the concept, and then a platform to begin refining and modifying.

I usually work in an iterative style, roughly Kanban oriented, but with influences from XP, Scrum, and Lean.

In general an iterative approach focused on delivering incremental value immediately seems to have the best results.

This approach requires less “Big Up-Front Design”, but requires continual interaction between the product “owner”, and the implementors (developers, testers, designers, etc.).

This process can scale from just me and you, to dozens of stakeholders and implementers.

Technology

Presently I’m doing a lot of DevOps type work; extensively using Docker and container technologies on Kubernetes, OpenShift, and other platforms.

My platform of choice for web application development is Go, usually on Linux, but also on MacOS and Windows.

I’m also fond of ASP.NET MVC and C# for Microsoft environments and windows applications and business web applications. .NET Core looks to be a powerful and versatile evolution of the .NET ecosystem too.

Java is the industry behemoth for enterprise applications, and devices, and has arguably the most developed community and ecosystem for building robust applications.

Single Page Apps (SPA ) are very popular; some detractors point out that they’re usually much more expensive - a well designed static site can be quicker to implement, easier to use, and a more effective - on the other hand; they are popular and can be quite expressive and powerful too. I am experienced using the Javascript frameworks React, Angular, and even Vue.js, and can provide guidance on these as needed.

Architecture

Finding the best technology for a solution is often a balance between cost of development tools, cost of deployment and hosting, speed of development, and re-usable code libraries and snippets.

Depending on many variables, like the long term support plan, the upfront financial investment available, the intended use or audience, or other factors, I’ll be able to quickly build solutions in any one of a these technologies (and a few others too).

Infrastructure

Modern web applications and systems are built to be distributed, fault-tolerant, and to scale well under load.

Your distributed application can run on AWS, Google Cloud, Rackspace, Azure, or any other public or private cloud environment.

If local deployment is sufficient for your needs, I can help you stand up and manage your local infrastructure.

History

John Weldon Consulting got it’s start in 2002, when I needed to supplement my income while volunteering at a non-profit, and started freelancing with a few side projects.

I’d just left my full time software development job with a respected software company, and started helping out with children-at-risk.

Volunteering doesn’t support a family very well, so sadly after eighteen months I resigned from the General Manager position at Hope for the Nations. I resumed working in the software development industry, and fortunately I love it here too.

I’ve had a couple intervals where I did no side work, but in the last decade or so I’ve been constantly engaged with clients and projects in my evenings and weekends, in addition to my “day job” of software consulting.

CSharpGoJavaScriptProcessTechnology
Consulting