Software-Technology

Modern Software Engineering: Doing What Works to Build Better Software Faster

Software engineering is a relatively young discipline that’s rapidly evolving. What practices moved software forward thirty years ago are different from what moves them today. Today, most software requires continual-release techniques in the era of Internet speed. In this book, David Farley, an expert in that area and one seasoned in business practices, brings the field up to date with practices that work. Modern Software Engineering provides a good summary informed by reading, personal practice,…

Continue reading

Leadership Management-Business Software-Technology

Tech Leadership: The Blueprint for Evolving from Individual Contributor to Tech Leader

Typically, technical education prepares students for individual positions that require a lot of self-motivated thinking. They don’t usually prepare them for leading teams. Yet some new employees might find that they want to move beyond being an individual contributor (IC) into a leadership role. Getting an MBA would be an obvious educational direction, but that expensive route might not prepare a student for the exact kind of leadership role she/he desires. In this book, Andrew…

Continue reading

Software-Technology

Data-Oriented Programming: Reduce Software Complexity

Professionally, I write code for web applications in PHP for biomedical use. Thus, data play a central role in my professional life. At first, I tried to design my programs around object-orientated (OO) principles, but soon found that data played a strong role that OO actually restrained. Years later, I found how React divided itself between immutable data, state information, and code. Though I no longer code in React, I find this division still helpful…

Continue reading

Management-Business Software-Technology

Transforming IT Culture: How to Use Social Intelligence, Human Factors & Collaboration to Create an IT Department That Outperforms

I liked this book a lot. It’s labeled as a part of a “CIO Series,” but that’s really a mislabel. It’s for anyone working with software developers who has to navigate a distinct company culture. It’s especially geared for those who want to mold that culture for good. Software development is a tricky industry. Good people are hard to find, and they often don’t have a stereotypical personality – especially if they’re really talented. Yet…

Continue reading

Leadership Management-Business Software-Technology

Engineering Management for the Rest of Us

Engineering management books can sometimes be a bit technical, like the field of engineering itself. Of course, it’s no surprise that engineers often view the task as one of exacting competence – like their work. Yet management can, in truth, be its own thing because it deals with people. Humans pose their own set of challenges, and few can speak authoritatively about both realms. Thus, few good books exist in this domain. Unfortunately, many engineers…

Continue reading

Management-Business Software-Technology

The Software Hiring Handbook: The Software Developer’s Guide to Conducting a Job Interview

As Michael Kahn states in this book’s introduction, there exist many guides to giving interviews generally along with guides to being interviewed about software development, but there are few guides to giving interviews specifically to developers. This 2006 book tries to fill that niche. It is short and certainly not comprehensive – as if that were even possible. But it advances wisdom that people like me need in finding a software developer, especially for the…

Continue reading

Management-Business Software-Technology

Managing the Unmanageable: Rules, Tools & Insights for Managing Software People & Teams

Many books on managing software development focus on small subsets of the management process. For example, many books on agile fill bookstores; others propose a well-studied answer to a particular problem; still others provide anecdotes and inspiration to often-overtaxed managers. This book fits into none of those categories. Instead, it seeks to provide a comprehensive treatment on how to manage software development by managing individuals instead of processes. This modern approach fits more in line…

Continue reading

Management-Business Software-Technology

Building Great Software Engineering Teams: Recruiting, Hiring & Managing Your Team from Startup to Success

Building excellent software is an intricate task that requires a great deal of technical expertise. Managing people who build software is also an intricate task, but the required skillset is different. A manager has to be a good enough developer to be respected, but she/he must also have “soft skills” to finesse interpersonal situations. Instead of a technical challenge, management becomes a way of life and leading. With a particular focus on software engineering, Josh…

Continue reading

Indie Software-Technology

Software Quality Assurance 101: Best Practices Made Easy

Quality assurance (QA) is an essential part of software development. It helps ensure that newly developed software actually does what it’s intended to. This seems like a deceptively easy task at first, but testing is, in truth, a skilled art-form. In this book, Rachelle Rood and Jessica Parker attempt to orient those just entering the field how to approach their work. They break down complex topics while pointing practitioners how to add value to software…

Continue reading

Management-Business Software-Technology

World Class IT: Why Businesses Succeed When IT Triumphs

In the years following this 2009 book, the central place of information technology (IT) in the business world has only become recognized more and more. The COVID pandemic accelerated trends whereby IT plays a critical role in global business culture. Peter High’s book fixed the paradigm for how successful IT might be leveraged for business success. Almost 15 years later, the question then becomes: Is it still relevant? Yes, I argue. This classic helps us…

Continue reading