5 Techniques for Accelerating Engineering Development

These techniques could help you get to market faster while reducing costs.

Jacob Beningo

March 12, 2019

5 Min Read
5 Techniques for Accelerating Engineering Development

(Image source: qimono on Pixabay) 

Whether its a parts company, software supplier, or all the way to system integrators and even consultants, no one seems immunte to the ideas of decreasing costs and faster time to market, while improving product quality. 

Probably ninety percent of all engineering vendors rely on these sorts of coveted, and often overused, marketing phrases. But any hyperbole aside, it touches on a reality of human nature. We want to do more at the same or better quality level, while also decreasing the resources we use to achieve our end goals.

That is not to say this is an impossible goal. In fact it's quite obtainable. In many cases it all comes down to engineering development time and costs.

Here are my top five techniques for accelerating engineering development. These five techniques are just a few examples of low-hanging fruit that companies and developers can consider when trying to accelerate engineering development. I’ve found that both myself and my clients have been able to use these techniques to considerably decrease the time we spend developing products, and I’m sure that they can work for you as well.

1.) Master Your Defects

Embedded software developers on average spend 20 – 40% of their time debugging their software. That sounds outrageous, but if you look at the Aspencore 2017 Embedded Survey results or speak to developers at embedded systems conferences you’ll find that figure is accurate! If 20% of a work year is spent debugging, that’s nearly 2.5 months  in the most optimistic case. Businesses and developers who want to accelerate engineering development need to focus on mastering their defects and put in place the processes to prevent defects and techniques to catch them as soon as they occur.

2.) Have the Right Tools for the Job

If you want to go fast, you need to have the right tools. I have a client that I have worked with for over 10 years who steadfastly refuses to invest in a quality debug probe. The probe that he uses was purchased for $75 dollars a decade ago. That seems like a great investment of just $7.50 a year, but the problem with this probe is that it allows just two breakpoints. One breakpoint must be free when loading the application from the IDE, otherwise a resource error occurs and the debugging process must be restarted. The process probably takes two minutes to do from clicking the debug button to, “Oh you don’t have breakpoints left, try again.” Once the program loads, there are still only two breakpoints that must be constantly toggled on and off based on what is being looked at during the session.

A quality probe might cost $700 (about $70 a year over a decade). How much extra time and effort was spent over that decade in order to save $62.50 a year? Having the right tool for the job cannot only speed up engineering development, but also save in overall costs.

3.) Focus on Your Value; Outsource the Rest

For engineers (and any business for that matter), it’s important to recognize what value you are bringing to the table. I see quite a few companies that have a vision and a value they are bringing to the world, but they get caught up in production line details, or developing drivers, or some other thing.

We all have limited resources and by focusing time and effort on the non-value add, it dilutes the value of the business or the engineer. You want to recognize what your key skills and value are and focus on those. Outsource everything else to someone whose value proposition is to provide those things. By doing so, you can focus on your differentiators while the low-level engineering is done elsewhere.

4.) Leverage Existing Software Platforms

Back in the day, starting a new project meant that we were going to be spending months learning the innards of a new microcontroller and developing drivers to get it up and running. Once that was done, we could then start to focus on our actual application. Today, we have the opportunity to leverage existing drivers, middleware, operating systems and libraries from not only the microcontroller vendors but also from third-party companies that specialize in various software technologies. Leveraging existing software platforms, even ones that are certified, can dramatically accelerate engineering development.

RELATED ARTICLES:

5.)  Leverage Existing Hardware Platforms

It really amazes me that all of today’s solutions didn’t exist just a year or two ago. For many embedded products, the core hardware features tend to be the same. There’s a processor that is surrounded by memory that communicates to some interface, samples sensors, and then controls something. It’s a pretty generic way to look at things, but after having designed systems for automotive, medical, military/aerospac, and space systems, I’ve found that there is a lot of commonality between embedded systems.

In fact, probably 80% is the same or similar guts and the remaining 20% is where companies differentiate. So, if there is an opportunity to leverage existing hardware why not do it? It can easily remove not just the development effort but also time and costs to maintain the system once it is in production.

Jacob Beningo is an embedded software consultant who currently works with clients in more than a dozen countries to dramatically transform their businesses by improving product quality, cost and time to market. He has published more than 200 articles on embedded software development techniques, is a sought-after speaker and technical trainer and holds three degrees, including a Masters of Engineering from the University of Michigan. Feel free to contact him at [email protected] or at his website. You can also sign up for his monthly Embedded Bytes Newsletter.

About the Author

Jacob Beningo

Jacob Beningo is an embedded software consultant who currently works with clients in more than a dozen countries to dramatically transform their businesses by improving product quality, cost and time to market. He has published more than 300 articles on embedded software development techniques, has published several books, is a sought-after speaker and technical trainer and holds three degrees which include a Masters of Engineering from the University of Michigan.

Sign up for Design News newsletters

You May Also Like