Enterprise Software Developer training course

A new course, focussed on improving software development

I'm pleased to say that, from September, I'll be running a new training course called Enterprise Software Developer. Where Software Architecture for Developers focusses on the architecture and design elements of software projects, the new course expands upon this to cover the full project lifecycle.

"Enterprise Software Developer" is a four day practical training course about building software within an enterprise environment in a structured, lightweight and pragmatic way. It covers the complete end-to-end software development process; from planning, gathering requirements and software architecture through to the effective use of source code control, automated unit testing, continuous integration and load testing. Pragmatic enterprise software development is about taking the best bits from traditional and modern approaches, blending them together to form a structured yet lightweight approach to building software that's appropriate to the way that your organisation works. This is what the course is all about.

The course covers a number of different aspects of the software development process; from dealing with requirements through to the use of source code control, load testing and operational hand-over.

Enterprise Software Developer

On the course, you'll learn how to...

  • Choose the best development methodology for your project; whether that's agile, waterfall or something in-between.
  • Gather and capture functional and non-functional requirements.
  • Prioritise and estimate workload.
  • Manage your software project and track progress.
  • Define the software architecture for your solution.
  • Use source code control and branching to manage change.
  • Write automated unit and integration tests for confidence when refactoring and increased quality.
  • Create an automated build script to manage release complexity and provide release consistency.
  • Setup a continuous integration server to ensure continual quality control.
  • Make your software production ready for release.
  • Understand why configuration management is important and how to integrate it into your project.
  • Write a load test script to undertake performance testing.
  • Understand how to handover your system to an operational environment.

In addition to building software myself, I also undertake consulting engagements where I help software teams improve the way that they build software. I've been doing this for a number of years now and I'm confident in saying that while the above can really help to improve the way that teams build software, much of it still isn't regarded as "normal practice" for a large number of them. Some guidance in these areas really does go a long way. There are courses out there that look at automated unit testing, courses that teach TDD, courses that cover the use of agile techniques but not much that brings everything together. This is why I put the course together and, unlike Software Architecture for Developers, this course *does* include some coding and is offered in two flavours ... there's a .NET version and a Java version. Just let us know which you'd like to do when booking.

About the author

Simon is an independent consultant specializing in software architecture, and the author of Software Architecture for Developers (a developer-friendly guide to software architecture, technical leadership and the balance with agility). He’s also the creator of the C4 software architecture model and the founder of Structurizr, which is a collection of open source and commercial tooling to help software teams visualise, document and explore their software architecture.

You can find Simon on Twitter at @simonbrown ... see simonbrown.je for information about his speaking schedule, videos from past conferences and software architecture training.

Add a comment Send a TrackBack