The Embedded Muse Logo The Embedded Muse
Issue Number 471, June 16, 2023
Copyright 2023 The Ganssle Group

Editor: Jack Ganssle, jack@ganssle.com

   Jack Ganssle, Editor of The Embedded Muse

You may redistribute this newsletter for non-commercial purposes. For commercial use contact jack@ganssle.com. To subscribe or unsubscribe go here or drop Jack an email.

Contents
Editor's Notes

SEGGER SystemView analyzing embedded systems

Tip for sending me email: My email filters are super aggressive and I no longer look at the spam mailbox. If you include the phrase "embedded muse" in the subject line your email will wend its weighty way to me.

Quotes and Thoughts

55% of our time is spent on our main project. Budgeting 40 hours a week for a project is naive. (Fred Brooks, The Mythical Man-Month).

Tools and Tips

Please submit clever ideas or thoughts about tools, techniques and resources you love or hate. Here are the tool reviews submitted in the past.

Does anyone have a MetaLink emulator? Steve Foschino writes:

.  I’m hoping your vast embedded audience can help out with a emulator problem we’re facing.  We have multiple legacy products deployed for many years that use a Dallas 80C320.  Original development and ongoing support has been done using MetaLink XF emulators.  Unfortunately, thru the years, our supply of working emulators has dwindled to 1.  I have searched everywhere on and off for quite a while  for either someone willing to sell or repair, but to no avail.  I was hoping you can throw out the ‘ Bat Signal’ to your readers to see if anyone has one for sale or can do repairs. Contact me at 'Steve Foschino' <sfoschino@firecominc.com>,

Redundant Code = Bad Code

Get rid of redundant code. Researchers at Stanford studied 1.6 million lines of Linux and found that redundancies, even when harmless, highly correlate with bugs. (See https://web.stanford.edu/~engler/p401-xie.pdf).

They defined redundancies as code snippets that have no effect, like assigning a variable to itself, initializing or setting a variable and then never using that value, dead code, or complex conditionals where a subexpression will never be evaluated, since its logic is already part of a prior subexpression. They were clever enough to eliminate special cases like setting a memory mapped I/O port, since this sort of operation looks redundant but isn’t.

Even harmless redundancies that don’t create bugs are problems, since these functions are 50% more likely to contain hard errors than other functions that do not have redundant code. Redundancy suggests the developers are confused, and so are likely to make a series of mistakes.

Dead code is also a problem, defined as "dead code catches logical errors signaled by false beliefs that an impossible path can execute". Their results indicated that "Despite its simplicity, dead code analysis found a highnumber of clearly serious errors."

On Employee Retention

In the last issue a reader whose company has problems retaining employees wondered what they should do. The responses were overwhelming.

Jon Waisnor wrote:

I’d like to comment on the question posed by anonymous on “young guys”.  I spent 42 years in the embedded development world and worked for all sorts of companies and on all sorts of projects and products, as an individual contributor and hiring manager.  I too, was a “young guy” once and only spent 22 months on my first job working on medical lab software running on minicomputers (yep, that long ago). Took that job to get started.  You needed real experience on your resume to kick off your career.   I left to work on microprocessor based products because that’s what I originally interested me in engineering school.

Rather than concentrating his effort on bemoaning the “young guys (and gals)” the reader should be trying to figure out why the new employees are leaving after a year or two as well as the reader’s organization interview skills.  Oh, yea.  Is the consistent reference to “young guys” a clue to some bias in the organization?

  1. Unhappiness with our work environment.  Is it the type of place where the “beatings continue until moral improves”?  Yea, that’s flippant but the management has to look at the physical facility, technology they offer and the restraints the new employees may experience.  Crammed schedules, the thrashing of assignments to projects, not allowing the new employee to obtain a sense of completion? 
  2. Everyone has their own office?  This runs counter to collaborative approach I’ve seen the last 15 years.  Yea, the open office can be noisy but you have to have more smaller meeting rooms with doors and whiteboards.  At least have cubes with low walls.
  3. We have a fair number of people who have been with us for 10+ and 20+ years.  Is it a place where the processes, procedures, and technology have become “stale” because of the more senior staff?  Is there a resistance to moving to newer languages? Source repository tools? New hardware? Shortage of development equipment?  Are the new employees linked up with the more experienced engineers for training and evaluation?  Are these “old timers” territorial, resisting and quietly hostile to the new employees?  Is there a “Darwinian” approach to new employees – stress them and see who breaks and leaves and keep the rest?  Do the more senior employees form a “cliche” the newer can’t break into?  Does the company have a reasonable distribution of employees by age the new employees can relate to?
  4. What kept me with an employer for several years?  External and internal goals.  Well, first the projects, products and the technology appealed to me.  Later, after getting married and a family it was to get a dependable paycheck as I ushered my kids through school and college.  There were several companies I left after either not relating to the job, the organization was hostile, or too much churn.
  5. Money.  Does the organization pay well enough to keep the new employees, especially when the job market is so tight?
  6. Interviewing skills.  Does the organization effectively interview?  Check references before making an offer?  Explain the job role in detail or hide problems at the organization?  One interview I went to forever stands out in my mind.  “How well are you at working with difficult people?” was a definite tip-off of why I’d seen this employer advertising positions so often.  Also, remember, the candidate with no or 1-2 years of experience may not have enough experience to know what questions to ask.

In summary, look at what you have to offer.  The fault may be within the organization and not with the candidates.

Nick Soroka, like others, felt happiness is the issue:

Respectfully, people don't leave jobs when they are happy.  In my experience, management tends to comprise people who have a sedentary view of operations while young people want to take risks and try new things.  With creative people (engineers), there will be a desire to push things and continuously improve.  So, the problem may be management not providing these opportunities.  And then comes money.  People paid well but unhappy will stay for a while.  But the moment a new offer comes along that's 10% or 20%, more than what you pay, they will take it.  

You should conduct exit interviews and take every criticism as an action item.  Maybe you can't solve all the issues but if you want attrition to stop, changes need to happen.  Where I work there has been a lot of turn over.  I myself am looking for something different.  As a grunt who hears the gossip, it's any combination of money, lack of promotions, or lack of meaning in the work.  

I don't think you can (or should) try to screen if someone will stay for a while or not.  I don't believe there are any reliable ways to do this.  If you fix the internal problems, they will stay.  

Pablo Miralles, also like other readers, brought some personal perspective to this:

As a Junior with 3 years of experience I thought I could offer my perspective. I’m based in Europe, so cultural considerations apply, but:

  • anyone has inputs on how one determine if a candidate, whether young or not can be assessed to get an idea if they are the type of person who will stay longer than 2-3 years?

Having done this myself and having friends who haven’t, a big part of this will be luck. Many of us had “dream careers” that just turned out not to be so dreamy once we were in them. That being said, I feel the ones who stayed at their job had a combination of:

  1. Above average pay
  2. Good career prospects and strong supervisor/peer recognition
  3. Plans to stay put regardless of the job: A stable partner in the city or family and friends or any reason to not move. Severely restricts your possibilities. Related to this, I’m guessing remote work would be great for employee retention and my company managed to retain me by offering a sizeable pay bump and a fully remote offer.
  • Is there any personality traits or tests that will assist in this?

No idea, but personal experience/anecdote says you’re looking for unambitious people and/or people who love their home. Again, someone who has a reason to stay that is not you

  • Can you more accurately find good people who will stay longer?

Haven’t tried.

  • Or has the world just changed so much that all the young guys want to change from one job to another for experience or money or change of scenery?

Surveys and personal experience consistently show that the best way to get better job prospects is hopping. Maybe that is not true at your company, but you are going to have a hard time convincing your juniors that that is indeed true. To convince them otherwise, you really have to go above what the market would offer. My boss says in our region junior salaries follow a 4/4/4/20 pay increase scheme: Juniors get 2-3 years at a company getting 4% raises, then hop for a 20% raise. Give them an 8-10% raise per year and a good starting figure and they might reconsider.
And again, few things will make them stay if they have a reason to move, like a significant other who is themselves moving, perhaps because their company is not so accommodating.

A reader who wishes to remain anonymous wrote:

I have been reading your newsletters now for a while and the employee retention bit really resonated for me from one of those "young guys" perspective. It is not the first person from senior position trying to go to public sources (forums, newsletters), sounding like they have been too long in the top, to be completely clueless. 

I did hop through few companies, and to me it always was the mid management issue, which would make day to day work sour to the point where you just wait for the time to go home. Then motivation, productivity drops to do well in the company and you naturally start asking around how are other people in your circle doing and are they happy with their work. Being technical profession, the mid management in larger companies are usually the guys, whom been "long enough" (10-20 years). They get promoted to lead the teams of younger ones. What usually those men/women are missing are the leadership, communication, project management skills. And it becomes "back in my day.. when I was your age... so sit and do your job and we will speak later...". Of course all wrapped up in a few layers of "politically correct" language. They are only in those managerial positions, because they have been long enough warming up their seats. 
BUT, it is not always same for everyone. Some do enjoy nine-to-five and don't care. I am sometimes really jealous of them. I see people, whom move around, are usually the ones, whom are passionate about engineering, do want their ideas to be heard, whom do want to contribute, not just be pigeonholed into the cubicle and not make noise. 

All in all, what I would strongly recommend to the guys, asking those retention questions. Go and have a honest chat and listen, with those whom hand in the notice. You will be surprised about the feedback. There is on thing, when you fill in HR feedback form when leaving, and actually getting it off the chest. 

Another reader who asked to remain anonymous wrote:

On the question of employee retention, especially with engineers early in their career, I promise you that the majority of them leave for better compensation. If the organization does not provide adequate yearly raises (scaled by merit) and clear/well defined advancement paths, then there is no hope in keeping young top talent. All it takes is a few months of interview prepping and conducting interviews to find another opportunity that will generally pay 20% better. It’s frankly a no-brainer to do. We can have further discussions on why this is, but consider the rising and exorbitant costs of living and starting a family today compared to a couple of decades ago. Overall, this phenomena isn’t rocket science! It’s about the money.

Yet another anonymous person wrote:

> So we have lately struggled with personnel turnaround, it seems not due to unhappiness with our work environment. We have a really nice environment with separate offices for each developer and in general it is very constructive to work with other people there.

A fair number of devs these days want WFH or hybrid.... Especially if a "nice" office comes with a horrible commute.

> The majority of the people who left are young guys, with no or one to two years experience when joining us. They then leave within 1-2 years.

Step 0: Don't lie to them. If you say, "We are working on exciting new tech..." and then put them on a crufty legacy product nobody wants to work on, where the tools haven't been upgraded in fifteen years.... Well, you get what you deserve.

Step 1: Demonstrate there is a pay and role upgrade path... If they discover nobody has been promoted or recieved a cost of living related increase in years.... You get what you deserve,

Step 2: Promote internally. If the obvious fact that the only way to get promoted is to leave the company and come back in a couple of years..... You get what you deserve,

> The turnaround is killing our productivity a bit, because of retraining new people all the time and losing value knowledge.

Step 3: Demonstrate you actually Value knowledge. If you say deadline, deadline, deadline and once in a bluemoon document and unit test and address technical debt.... You get what you deserve.

Step 4. Value diversity. Our industry is amongst the least diverse in terms of gender and minorities. How do you get experience if nobody hires you? So take a risk on that lady who doesn't have N years of cutting edge experience, but is clearly smart and hard working. Train up that smart Latino / Brown / ... kid who has an unattractive employment history shows but potential. And once you have done that, value diversity, contract to retraining and re-employment offers after pregnancy breaks, promote internally etc.

Step 5. If you aren't loyal to anybody, nobody is loyal to you. In economic down turns, consider flexible working arrangements like 3 or 4  day weeks and allowing second jobs instead of retrenchment. If everybody knows they're going to be shown the door the moment the going gets rough...  they are always looking out of the door for the next thing that will feed the kids.

Simon Ashby sent this:

First, I would ask your Anon correspondent if he knows how much his long-term employees 'hopped around' somewhat before settling down? 

Secondly, money was always our problem, situated near the expanding black hole gravitation of a high-tech zone (Cambridge, UK), I found that money was a big factor. People could increase their salaries by 50% in 18 months by moving jobs, which we couldn't match. 
We hired from the pool of inexperienced guys who couldn't get on that bandwagon, and we selected them carefully for their potential.  And no, we couldn't hold them for long.  

It took us 18 months to make a new graduate productive, and I considered us lucky if we got another year or two before they started looking elsewhere. It helped that we offered interesting and innovative work, ahead of our field; for instance recording video to hard-drives in real-time, which was seriously difficult in the early days of JPEG compression!   ( Sadly, that also scared a lot of applicants off! ).  

Erik Schumacher wrote:

In regards to issue 470's Employee Retention article:  you asked for thoughts, so I hope you don't mind me emailing you with my own experience as a young(ish) engineer who has left a position within a year recently.

I spent 10+ years with the same company.  I knew at some point I would have to leave, as it was a smaller company and there was only so much room for professional growth.  Yet there was never enough incentive in terms of salary growth to leave a stable position.

In the past few years, two big factors changed that: the rise in WFH flexibility, and the rise in average salary.  With a growing family to worry about, the jump in salary and the flexibility to help around the house more is hard to turn down.

After I switched jobs, I did something I thought I never would....within a year, I switched yet again.  I received an offer that I could not responsibly refuse.  The market almost made quick turnaround necessary; otherwise I would have fallen behind my market value.

As salaries stabilize, I believe turnaround will return to pre-2020 levels.

But - a bit of advice to those struggling with turnaround costs:  preemptive raises and title changes might go a long way in retaining good talent.  It seems like a cheaper option than the alternative.

Daniele Nardi contributed:

I'd like to share my thoughts about the employee retention topic in your last newsletter.

It could be trivial, but I think there isn't a unique response for the problem raised by the anonymous Muse reader. In my ten years in the field I saw:
- people leaving after 20+ years because a new boss came and it wasn't like the one before: a change in management at any level, from office to global positions, can change the life of people in unexpected ways
- people leaving because needed a raise that the company didn't agree: external economic factors, like a sudden increase in the cost of life, can bring people to search for a better salary (it happened to me right after the beginning of war in Ukraine)
- people leaving to search for new experiences
- people leaving because wanted to work for a specific or a bigger company
- people searching for career steps that were not possible in the previous company

All of those reasons can be combined and weighted in different ways, and there can be other reasons, of course.

A good boss must know how to catch one of those situations before they happen and try to manage the situation.

I suppose there is no way to guess if a person is a longer or shorter stay-er: HR departments and acquisition processes exist to address these situations from the beginning, then it's the job of bosses and colleagues to create a work environment that lets people stay longer.

Then there is risk mitigation, which I found not always applied: don't leave people alone on a project. There are many job postings out there where it is asked to "work without supervision" or "in autonomy", which most of the time mean that you will work alone on a project and you will hardly have human contact with your colleagues. That's hell. Having at least two people on a project have multiple benefits:
- shared knowledge, two people knowing is better than one (redundancy is the way also with people, not only for servers)
- better knowledge, knowledge created from different point of views has already been reviewed, discussed and acknowledged
- team building, a good team will lose members less easily.

And this from Charles Louis:

As a young guy myself, I think I could add my few cents to the issue.

I left my first employer after a little more than 3.5 years. I would have stayed longer but, like most companies, they absolutely refused to update my salary to current-at-the-time standards.
And I'm not talking about always being at the top of the market and getting raises every quarter. I had a situation where I'd regularly see offers that on average got me 50%+ salary increase, at some point it's just not fair to yourself to say no to that.
And that's not just my experience, most of my peers switched jobs for this exact reason.
Self development is a huge factor as well, but who says a new job wouldn't provide that? Most of the time, it actually broadens your horizons

Also, money issues hit especially hard if it's your first job. At the beginning one has to be the 'cheap laborer' in order to get any chance - with little to no experience, a resume barely stretching to one page, having to learn a lot of 'real-world' development etc.
But after 1-2 years, one you've proven yourself, one should be compensated fairly.

So to attract a young(ish) crowd for longer periods of time I think employers have to provide a truly competitive salary that grows with experience and continuous self-development opportunities. Other things like stability and predictable routine only start to matter more later.
Of course I'm generalizing but that was essentially my and my colleagues junior experience.

Vincent Defert looked at the language we use:

In response to the anonymous reader's concern about job hopping, I'd like to underline that our work-related vocabulary speaks for itself: half a century ago, companies were hiring personnel (i.e. persons); at the end of last century, they were employing human resources (i.e. raw materials, devices, instruments); nowadays, they use human capital (i.e. amounts on an account, ready for a wire transfer to the unemployment office).

There's respect for money, not for people, even at the most caring companies. It's just so and can't be changed.

As grey beards, we've had a different experience at work at the beginning of our career, and we can feel nostalgic about it; young people haven't.

They know they can only expect 2 things from their work: money, and opportunities to make friends. Real life happens outside of their work.

In the end, young people came to consider employers as interchangeable as companies consider their employees - which is just natural.

The only thing companies can do about it is to adapt their organization and procedures to take this reality into account.

Ray Keefe from Down Under sent this:

There has always been a tendency for early career employees to move on. Lifetime careers at a single enterprise have been phased out, by the enterprises. After that, the norm used to be that a graduate would move on average 18 months after starting their first job. Reasons vary but amongst other things, they don't have the experience to know if it is a good job or not. The other factor is that the easiest way to get a pay rise is to take a new job at a higher salary. And the easiest way to broaden your experience is to change jobs to a very different business. I see the current work environment as making employees keen to advance for financial security. We are again in an era where the rich are getting richer and everyone else is getting poorer. This is a global trend but felt mostly strongly in the most developed economies. 

As engineers or technology developers, we appreciate the need to understand a problem in order to be confident your solution really solves the whole problem. We should take the same approach to jobs, business, even economies. Engineering is sometimes described as the art of identifying the least unpalatable set of compromises. Certainly modern economies often also look like this. 

I own and run a product development business focusing on electronics products, usually with embedded software on board. We have grown steadily over the past 12 years and undertake a wide range of projects. As we have grown, staff retention has become a bigger issue. Someone who has been with us 5 years knows a lot more of our corporate history and memory than a graduate who moves on in 18 months. Most staff are not so productive until a few months into their role. This varies a lot depending on the prior experience and how much of that is aligned with how we do things. Here are some of the things we are looking at right now to try and ensure we remain a good option for continuing your career:
- pay parity. Market rates have gone up a lot. We are proactively increasing salaries to match market rates as best we can. That takes time and requires us to also address our pricing as our cost base is rising. Salaries are our primary expense. But if you ignore this then the only way staff can get a decent raise is by moving on.
- regularly talk about how things are going and the on the job experience. Our product development manager intentionally spends time every week with staff.
- have a business plan and strategy and let staff know about it. They can't get excited about something they don't know about.
- be a genuinely decent work environment doing work that is making the world a better place. Care about the staff, the clients, the suppliers. It is not just about money (blasphemy to some but this is also our lives and we want what we do to matter)

Think of it this way. You are selling a job. The employee is buying the job. The job needs to be attractive to them. Good people aren't usually desperate to take any job so if you want to attract good people then you need to sell the job well. And jobs are not like a diode function where once they are in you have them forever. You have to resell the job every day. 

My experience with the generation graduating today, compared to my graduation 40 years ago, is that they are more collaborative, less greedy and they want to do work they can believe in. Pay matters but purpose matters even more. And we need this shift to help us address so many of the problems we have that are driven by greed, fear and power mongering. 

Jim Kneale wrote:

Having just celebrated my 40th year with the same company on Saturday, I can't speak first hand about job-hopping.  However, I have seen various conditions that affect employee attrition.  

We bring in people that are fresh graduates or even prior to that on summer internships.  During interviews, I look for people who like to tinker on their own time.  That curiosity goes a long way, because little of what you do in the workplace is actually taught in school.  Those with a stellar GPA and other "portable" credentials have far more options to go elsewhere later on.

Another distinction that keeps people is to use true acceptance of diversity as a differentiator in retaining talent rather than just DEI lip service.  If Chris wants to become Jenna and she's helping to kick our competitions butt, then I want her to continue to do so here. 

There are plenty of ways to chase promising employees away:  shady ethics, arbitrarily overriding correct technical decisions, and lacking respect for the strengths that they bring to the organization.

Kirk Bailey had a bit of a different take:

I read the question posed about how to handle personnel turnaround. By the end of it, I was wondering if this got misplaced and was supposed to be in the "jokes" section. This seemed like a clueless manager who had to believe "it's them younguns, not us". Some observations, in no particular order:

  • I couldn't help but notice that the focus was not on how to retain the employees, but on how to avoid being bothered by hiring someone who might leave.
  • It apparently never occurred to him that people are rarely forthright in exit interviews, not wanting to burn bridges. I've always been puzzled by exit interviews; why is management suddenly interested in the opinions of people that are already on their way out? Wouldn't it be more productive to get their opinions while they're still invested in the company's future?
  • Great, more strange non-technical questions to try to figure out whether someone may leave before they've decided it's appropriate (making it even harder for someone with the right technical skills to potentially get through the process).

If I force myself to get past all that, I have a few guesses:

  • They're leaving because they don't see sufficient opportunities to enhance their skills
    • Maybe they never get any of the challenging assignments, just the grunt work
    • Perhaps they would appreciate being assigned something hard with one of the more senior developers available for one-on-one mentoring
  • Maybe the "really nice environment" isn't really as nice (or nice in the right ways) as they think
  • I've encountered many younger people who have a refreshingly appropriate appreciation for a proper "work-like balance" along with the wherewithal to act upon it. I wish I had developed that sooner.

Failure of the Week

From Marc Fain, who writes: If I put one item in the cart, shipping is free. If I put two items in the cart, shipping is $99,999!
Turns out the site was a scam ($98 is too good to be true) but scammers use software too.

From Jakub Mazur:

Have you submitted a Failure of the Week? I'm getting a ton of these and yours was added to the queue.

Jobs!

Let me know if you’re hiring embedded engineers. No recruiters please, and I reserve the right to edit ads to fit the format and intent of this newsletter. Please keep it to 100 words. There is no charge for a job ad.

 

 Volta Labs, an MIT spin-off, is developing a novel lab automation platform for genome sequencing. We raised $20 million as part of our Series-A funding and are hiring for several roles related to embedded software. All roles are full-time, 100% onsite in Boston, MA, and require the ability to thrive in an early-stage startup. 

  Senior Firmware Engineer - Design/develop/debug firmware for our instrument platform. Strong experience with RTOS, C/C++, ARM-based MCUs. 

  Staff/Principal Engineer, Instrument Software - Lead design/development of instrument control software. Prior experience as a tech lead and strong experience in Python programming on Linux. 

  Tech Lead, Electrical and Embedded Systems - Lead design/development of electrical subsystems and firmware. Prior experience as a tech lead, strong experience with electrical design / bring-up, and integration between firmware and electromechanical systems.


Augustus Aerospace is a premier provider of high-performance software-defined radio payload solutions deployed in small satellites and high-altitude platforms for U.S. government customers. We are experiencing rapid growth and seeking talented individuals with experience in RF, DSP, software, hardware, FPGAs, GPUs, embedded systems, and related, to help solve challenging technical problems. You will be part of a tightly integrated team that designs, develops, and tests systems performing acquisition and processing functions using powerful processors. Location is Lone Tree (Denver) or Colorado Springs, CO. Must be a US Citizen and able to obtain and hold a security clearance. Please direct interested people to Tyler Sheffield via sheffield@augustusaero.com. 

 

Ray Keefe, of Successful Endeavours, wrote about retention above, and is also hiring:

We are also hiring so if you are looking then we are wanting to employ:
- electronics designers
- embedded software developers (primarily C in bare metal systems but we are using Linux and Python more often)
- experienced developers who can also team lead (and want to)
- we are based in Melbourne Australia
- salary depends on capability (that's the bit you need to sell to us)

Contact Ray Keefe <ray@successful.com.au>


Are you a software engineer passionate about computer science, engineering, and the robotic exploration of our solar system?

Does solving embedded software challenges sound motivating?

We’re seeking a dedicated embedded software developer eager to solve hard problems in space using best-practice software development practices. The Johns Hopkins Applied Physics Laboratory (JHUAPL) Space Exploration Sector develops spacecraft for both National Security applications and NASA funded exploration missions. We’re a collaborative team of software developers, applied mathematicians/physicists and embedded system engineers that develop flight software and simulations for JHUAPL-developed spacecraft.

Click here to apply! https://careers.jhuapl.edu/jobs/51255?lang=en-us


Plentify is a fully remote, South African startup, building AI backed Zephyr based IoT devices that improve power grid stability and optimise consumer power use. We are hiring a full-time Embedded Software Engineer (remote OK). For information on the role, please see our LinkedIn posting. To apply, please send your resume and cover letter to careers@plentify.io.


Company Info: Ovyl (https://ovyl.io) is a turn-key product development firm based in Nashville, TN. 
Position: Firmware Engineer
- We work with a variety of MCUs/SoCs: Nordic, SiLabs, Renesas, ST, and more
- We work with a variety of wireless technologies: BLE, Thread, WiFi, Cellular, LoRa (maybe one day DECT NR+?)
- We use Zephyr or FreeRTOS (depends on the hardware)
- We love test automation, including unit and integration tests running in CI pipelines

More information in our job post: LINK

Joke For The Week

These jokes are archived here.

A mathematician and an engineer die and go to hell.

The devil puts them in a loooong room with a beautiful woman at the far end.

The devil says "Each time I ring this bell you will run 1/2 of the distance to the end of the room. Understand?"

The both nod in agreement, so the devil rings the bell and the engineer takes off running, but the mathematician doesn't move.
 
Again he rings the bell and the engineer runs 1/2 of the remaining distance while the mathematician remains at the starting line.

So the devil asks him why are you not running?

He explains that as a mathematician he knows that if he always runs 1/2 of the remaining distance he will never reach the end.

the devil nods and goes to the engineer, "you heard him, you will never reach the end, why do you run?"

The engineer replies "Because I will get close enough for all practical purposes!"

About The Embedded Muse

The Embedded Muse is Jack Ganssle's newsletter. Send complaints, comments, and contributions to me at jack@ganssle.com.

The Embedded Muse is supported by The Ganssle Group, whose mission is to help embedded folks get better products to market faster.