Default image for blog posts - purely decorative

Life as a Software Consultant

John Boardman Articles, Consulting, Keyhole, Opinion Leave a Comment

I’ve been in the field of programming professionally since 1990. I started out as a corporate employee for 14 years, then as a consultant, back to an employee, and finally settled with consulting. In both positions, I’ve worked with small, medium, large, and huge Fortune 50 corporations. There are many similarities between being an employee and a consultant, but there are also some significant differences.

In this blog, I’ll explore what life has been like in each role and hopefully give some perspective to others who might just be starting out. Keep in mind when I write “employee,” I am specifically targeting programmers.

Hello Micronaut

Rik Scarborough Articles, Java, Microservices, Testing Leave a Comment

From some of my previous posts, you can get the idea that I promote the idea of developing maintainable code rapidly. So I was pretty excited when I learned that the same group that was responsible for Grails was working on a similar project for Web Services. Hello, Micronaut.

In this post, I provide an introduction to the Micronaut framework and its features to provide a foundation for you to try it out yourself.

Default image for blog posts - purely decorative

Improving Performance in Enterprise Web Applications

Zach Gardner Articles, Opinion, Programming

Every team that builds a large web application can generally pick from the following: delivering application functionality on time, with high quality, or high performance. Teams can pick one or two of the options, but they can’t pick all three.

Most teams opt to only focus on performance if and when it becomes a problem. This, unfortunately, can be far too late for some projects. Anyone who has been in the industry can empathize with both sides of the equation – choosing to defer performance concerns, as well as seeing the negative impact it can have on the success of the product as a whole.

It is a lesson I’ve learned from hard experience, so I want to make sure others can learn from my mistakes. In this post, I suggest a handful of principles that help to find a happy medium for delivering high-quality software applications while focusing on performance.

Significant improvements can be realized even if only one or two of the principles are applied. Applying all of them, of course, will produce the best results.

Unit Testing Your Architecture With ArchUnit

Cindy Turpin Architecture, Articles, Development Technologies & Tools, Testing 1 Comment

I am a Spring/Java developer (primarily) and an advocate of unit testing.

There is often a debate over what constitutes a unit test, an integration test, a system test, etc. But, most of us agree that tests keep you from going โ€œoff the railsโ€ once a project becomes sufficiently complex.

However, I have found very few discussions on architectural tests. What keeps us from deviating wildly unintentionally from our original, planned architecture? And, after all, how many enterprise projects even keep the same architects from the beginning of the initiative to shelving and replacement?

In this blog, I introduce ArchUnit, a Java architecture test library for specifying and asserting architecture rules in plain Java. Weโ€™ll discuss how it works to mitigate architectural risks in developing quality enterprise applications…