


Best Practices for Working in an Agile Culture
It can be difficult to get business leaders involved in the agile processes. While development teams have been doing it for a while, business still needs to catch up. At our May 22 Leaders Lunch, we discussed the challenges of working in an agile culture, and how to...
Managing Up: 14 Strategies for Working with Upper Management More Efficiently
Having a healthy and effective relationship with upper management is one of the most important factors in your work life. A good relationship with your manager can positively impact your job satisfaction, productivity and career. A poor working relationship can do the...
18 Tips for Motivating Software Developers to High Performance
On October 3, 2018, ProFocus invited Portland-based software development managers to join us for the latest in our Leaders Lunch series. These roundtable discussions are a great opportunity for software development and engineering leaders to share best practices and...
How to Hire Great Software Developers
Hiring a great software developer is no easy task, let alone an entire team of them. There’s a war for tech talent, and in order to compete, companies looking to hire software developers need to ask themselves an important question: Is my company the kind of place...
Managing Communication and Relationships Between Development and Product Management
On May 30, 2018, Portland-based software development managers joined ProFocus Technology for the latest in our series of Leaders Lunches. Moderated by John Boone, President of ProFocus, our May roundtable discussion focused on the topic of communication and...
The Over-Engineering Problem (and How to Avoid It)
One of my coworkers remarked recently that software engineers have an overengineering problem. What did he mean — and how common is this problem? Let’s look at what over-engineering is and why it’s a problem with a real-world example we’re all...
Coding Confidential
Psst, hey I got a little programmer secret…. Ready? I think most programmers will agree that testing your code, at least in theory, is a good idea. After all, we’ve seen the public consequences of software code that hasn’t been tested enough. The recent...
The Most Important Design Pattern in Software Development
Most software engineers will, sooner or later, learn about design patterns. Or at the very least, hear wind that design patterns are an important arsenal in a software engineer’s toolbox. A design pattern isn’t really something tangible you can pluck off a...
Why Code Is Hard to Read
Artists work with imagery and pictures. Singers work with music and songs. Writers and poets work with the arrangement of words. Software developers work with the arrangement of computer code. That’s what we software developers deal with in our day to day activities....
Serialization and Deserialization, or How to “Freeze Dry” Code
When you’ve been around the “software programming block” for a while, you can almost telepathically understand the motivation behind certain programming constructs and tools. In particular, the concept of serialization and deserialization. In a nutshell, it’s a way to...