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

The Engineering Executive’s Primer: Impactful Technical Leadership

Encoding software is a highly technical task, but effective leadership is often anything but technical. Combining the two thus can be supremely difficult, but this pair of skills is necessary to fill roles like Chief Information Officer (CIO) or Chief Technology Officer (CTO). Unfortunately, advice is hard to come by in the literature since only a few extended books in this space. To better fill these gaps, Will Larson, known for his deep looks at…

Continue reading

Presentation Software-Technology

Creating Software with Modern Diagramming Techniques: Build Better Software with Mermaid

As a computer science major in college, I learned about Unified Modeling Language (UML) as a way to visually document software. However, I soon found designing and maintaining those images to be more of a pain than they’re worth. I had to reshuffle images on graphics programs for every minor change, so keeping documentation up to date proved to be impossible. Recently, however, I discovered that someone invented a language, called Mermaid, to convert a…

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

Leadership Software-Technology

The Software Engineer’s Guidebook: Navigating Senior, Tech Lead & Staff Engineer Positions at Tech Companies & Startups

Writing software promises a career full of intellectual challenges, never-ending learning, and collaborative projects. Yet sometimes, the career path can seem arduous and hidden, especially for those not on the management track. How can engineers lead when they’re not managing a team? In this book, Gergely Orosz shows how engineers can establish a career, progress to senior level and tech lead, and then move onto principal or staff engineering roles. None of these roles involves…

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

Management-Business Software-Technology

Become an Effective Software Engineering Manager: How to Be the Leader Your Development Team Needs

Managing software engineering efforts is a difficult task. One needs a thorough knowledge of authoring software, which itself is a rare, time-consuming accomplishment. Almost all general managers do not have an in-depth knowledge of programming (though many assume they do!). A few of the best software developers are promoted into a managerial role and have to figure out what to do on the job. Much literature on general management topics exists, but few writings center…

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

Management-Business Software-Technology

Managing Humans: Biting & Humorous Tales of a Software Engineering Manager

Software engineers stereotypically have the personality type to stay behind their desks and not socialize too much. Their coding skills, so the story goes, facilitate their contribution to the company, not their finessing of humans. However, if they are ever promoted to a manager, they quickly have to pivot to understanding how to get their needs from subordinates who don’t always seek after managerial social approval. Not everyone is successful with this transition, but once…

Continue reading