My Expertise

There are hundreds of different software-building technologies and development approaches. Each has its own strengths and weaknesses.

After looking at many different technologies and comparing their strengths and weaknesses, I have focused my attention to the technologies listed below. I believe that they allow me to bring more value to every software project I am involved in.

Cloud Technologies

  • Azure – The Azure platform overs a wide-variety of services.  Here are some of the ones that I most commonly use:
    • Web Apps
    • Azure SQL
    • DocumentDb – the Microsoft No-SQL database
    • Azure Search
  • Pivotal Cloud Foundry
  • Docker

Programming Languages

  • C# – The most popular language in the .NET framework
  • JavaScript
  • TypeScript
  • Go
  • Python

Programming Frameworks and Libraries

  • .NET Core
  • EF – Entity framework
  • OData
  • OAuth 2.0 + Open Id Connect

Programming Patterns

  • RESTful APIs
  • Microservices using .NET Core
  • Service-Oriented Architectures (SOA)

Software Development

  • SOLID principles
  • Test-Driven development

Continuous Integration /  Continuous Deployment (CI/CD)

  • Using VSTS to deploy directly to Azure platform
  • Using TeamCity to deploy directly to Cloud hosting