Systems engineering

To the optimist, the glass is half full. To the pessimist, the glass is half empty. To the Systems Engineer, the glass is twice as big as it needs to be. – Anonymous

Over the course of two decades and across numerous industries, I’ve noticed how the role of systems engineering and their utilization vastly differs. This post is to share my experience, observations, and thoughts.

To clarify, when I say “systems engineering”, I’m not referring to the role related to IT.

Traditionally, systems engineers were predominantly mechanical and electrical engineering background. However, as software systems started to become exponentially larger and complex, people with software engineering background have stepped in to fill the responsibilities. I happen to be one of those software systems engineers.

One important point to bring up is that software SEs are not (and should not) be different than traditional systems engineers. Software SEs follow the same principles, methodologies, and techniques, but specialized for software intensive systems.

In some organizations, I’ve noticed software systems engineer team is separately formed under the software function. In addition they are tasked with non-SE activities such as managing JIRA tickets and grooming.

Systems engineers, regardless what type of systems they specialize in need to be involved across the entirety of the system end-to-end from inception, planning, design and build, V&V, release/installation, sustaining, and decomissioning. A software SE shouldn’t just be focused on “software.code”.

Do you need experience as an SE?

This topic has come up numerous times over the course of my career. What I share here are my personal views and opinion.

Systems engineering is largely about having the proper “breadth” and “depth” experience that is obtained over the years. This experience is not something which a person can gain from “reading a book”. I view experience as one of the main “ingredient” needed for an SE. Only by having to step through each steppingstone does one gain the “battle scars” and deep understanding of the challenges, risks, pitfalls, dependencies, and mitigation techniques.

How do you expect somebody to create an Italian recipe book if they’ve never even cooked pasta before? – Vanilla Rice

School nowadays offer a systems engineering degree and system engineers are hired into entry level positions. This in my opinion goes against the very nature of systems engineering and the source of why many modern organizations have underperforming systems engineering teams.

I strongly feel for someone to be an effective SE, that person needs to have come from a technical discipline who has experience creating such products/systems. Without this, it’s very likely there will be gaps between SE and development teams.

I will say there are exceptions to this. I have worked with exceptional SEs who has started as new hire straight out of college.

Final thoughts

There are many reasons why an organization may have underperforming SE teams. While I do not assume I know what all those reasons are, I think it may be worth looking into making systems engineering a career path from a technical engineering discipline. This will at a minimum bring in system engineers with the needed foundational experience.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *