[EE]: How to find & hire firmware people

classic Classic list List threaded Threaded
35 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Ryan O'Connor
Aha, full stack just refers to developers doing the front-end web design
and also the backend/server code. Backends could be anything from .NET
(very popular) to PHP (also popular) or recently "serverless" technologies
which deploy and scale your code for you, these can use almost any
programming language, eg. javascript (node.js).

A front-end developer typically only works with customer-facing code /
websites. A back-end developer typically only codes the api or implements
supporting layers interacting with databases or other data (typically).


On Wed, 18 Nov 2020 at 11:46, Neil Cherry <[hidden email]> wrote:

> On 11/17/20 4:40 PM, Forrest Christian (List Account) wrote:
> > Not trying to discount the skill of some web developers at all with the
> > following statement:
> >
> > I personally have to laugh at times at the term "Full Stack Web
> > Developer".
>
> Oh please someone explain to me what a Full stack is? I do Agile Dev/Ops
> now for
> SDn and I thought I knew the networking part of it really well but pnf's
> inside of
> pnfs, pserver/vserver/vnf/vnfc/pnf are hurting my brain. ;-)
>
> I'll be honest I can probably know half the stuff the OP was looking for
> but I do
> terrible on the programming tests (too many languages, I need my
> references as they
> all bleed into my code). Also please don't ask me to write a network
> stack. ;-)
> I can walk the stack though anything above layer 4 gets a bit wonky
> (actually layer
> 2 - layer 4 in SDN gets a bit wonky now).
>
> I am continually learning but that puts other information at the back of
> my mind
> because I have over 40 years of learning to keep in my head and in my
> emacs org-mode
> notes.
>
> --
> Linux Home Automation         Neil Cherry       [hidden email]
> http://www.linuxha.com/                         Main site
> http://linuxha.blogspot.com/                    My HA Blog
> Author of:      Linux Smart Homes For Dummies
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Bob Blick-5
In reply to this post by Neil Cherry-3
To work in a diner you need to know what a Full Stack is:

https://www.ihop.com/en/menu/limited-time-offers/pumpkin-spice-pancakes-full-stack

In binary, that would be 100 pancakes. Do I get the job?

Cheerful regards, Bob

________________________________________
From: [hidden email] <[hidden email]> on behalf of Neil Cherry
Sent: Tuesday, November 17, 2020 2:45 PM
To: Microcontroller discussion list - Public

Oh please someone explain to me what a Full stack is?
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Neil Cherry-3
In reply to this post by Ryan O'Connor
On 11/17/20 5:57 PM, Ryan O'Connor wrote:
> Aha, full stack just refers to developers doing the front-end web design
> and also the backend/server code. Backends could be anything from .NET
> (very popular) to PHP (also popular) or recently "serverless" technologies
> which deploy and scale your code for you, these can use almost any
> programming language, eg. javascript (node.js).
>
> A front-end developer typically only works with customer-facing code /
> websites. A back-end developer typically only codes the api or implements
> supporting layers interacting with databases or other data (typically).

Thanks for the explanation. I think of anything with stack in requirements
to mean network (or assembly language ;-) ).

This terminology is getting worse and having less meaning. Serverless
servers?

--
Linux Home Automation         Neil Cherry       [hidden email]
http://www.linuxha.com/                         Main site
http://linuxha.blogspot.com/                    My HA Blog
Author of:     Linux Smart Homes For Dummies
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

James Cameron-2
In reply to this post by Neil Cherry-3
On Tue, Nov 17, 2020 at 05:45:46PM -0500, Neil Cherry wrote:
> Oh please someone explain to me what a Full stack is?

It crept up on me too.  I was never paid to be a web developer, it was
a side hustle, for midnight projects and shadow IT.

What I recall is that specialisation evolved in the web developer
market to make use of several competing technologies.

"A full stack web developer is a person who can develop both client and
server software. In addition to mastering HTML and CSS, he/she also
knows how to: ... Program a server (like using PHP, ASP, Python, or
Node) Program a database (like using SQL, SQLite, or MongoDB)"

https://www.w3schools.com/whatis/whatis_fullstack.asp

At the time this terminology was starting, my practice was to use a
filesystem for data storage rather than an SQL API, so I never
qualified as "full stack".  Now, I touch databases if I have to.  And
wash my hands afterwards.

--
James Cameron
http://quozl.netrek.org/
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

David VanHorn-2
In reply to this post by Manu Abraham-2
What's the karma for turning away an unqualified applicant?  That was only
the most amusing point of the interview.

On Tue, Nov 17, 2020, 7:45 AM Manu Abraham <[hidden email]> wrote:

> >
> > There were other clues as well, but that was the funniest.
> >
>
> True, but ..
>
> One man's fun is another man's gloom.
> Though it appears to be funny, the karmic cycle I prefer to avoid.
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Neil Cherry-3
In reply to this post by James Cameron-2
On 11/17/20 7:10 PM, James Cameron wrote:
> On Tue, Nov 17, 2020 at 05:45:46PM -0500, Neil Cherry wrote:
>> Oh please someone explain to me what a Full stack is?
>
> It crept up on me too.  I was never paid to be a web developer, it was
> a side hustle, for midnight projects and shadow IT.
>
> What I recall is that specialisation evolved in the web developer
> market to make use of several competing technologies.

I never really specialized, I'm a tester (and Systems Engineer). I'm given
the title of Quality Assurance Engineer but I'm good at breaking things. :-)
I'm now finding I need certs for everything (grrr but I'll deal with it).

> "A full stack web developer is a person who can develop both client and
> server software. In addition to mastering HTML and CSS, he/she also
> knows how to: ... Program a server (like using PHP, ASP, Python, or
> Node) Program a database (like using SQL, SQLite, or MongoDB)"

Uhm, I've got these skills, but none with MS products. I've been on the
Unix/Linux side of things for quite a while. Also typical admin of the
normal network services.

> https://www.w3schools.com/whatis/whatis_fullstack.asp
>
> At the time this terminology was starting, my practice was to use a
> filesystem for data storage rather than an SQL API, so I never
> qualified as "full stack".  Now, I touch databases if I have to.  And
> wash my hands afterwards.

We now play with No-SQL which works well on the GET side but is a nightmare
on the POST/PATCH/DELETE side when dealing with millions of dynamic objects.
This is about to be revised.

--
Linux Home Automation         Neil Cherry       [hidden email]
http://www.linuxha.com/                         Main site
http://linuxha.blogspot.com/                    My HA Blog
Author of:     Linux Smart Homes For Dummies
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Bob Blick-5
In reply to this post by Bob Blick-5
Sorry not to have attached picture, was using phone and it wouldn't shrink it enough to fit through the Piclist filter - here it is.

Bob


To work in a diner you need to know what a Full Stack is:

https://www.ihop.com/en/menu/limited-time-offers/pumpkin-spice-pancakes-full-stack

In binary, that would be 100 pancakes. Do I get the job?

Cheerful regards, Bob

________________________________________
From: [hidden email] <[hidden email]> on behalf of Neil Cherry
Sent: Tuesday, November 17, 2020 2:45 PM
To: Microcontroller discussion list - Public

Oh please someone explain to me what a Full stack is?


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

FullStack.jpg (25K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Forrest Christian (List Account)
In reply to this post by Neil Cherry-3
On Tue, Nov 17, 2020 at 4:30 PM Neil Cherry <[hidden email]> wrote:

> This terminology is getting worse and having less meaning. Serverless
> servers?


Actually "Serverless"  is a pretty accurate term, and I'm starting to
experiment with it with MQTT messaging from the embedded world.

In short serverless just says that you tell your cloud provider (Amazon
AWS, Google Cloud, Microsoft Azure), etc. what you want it to do and don't
worry about the underlying servers at all.   I.E. things like "When you get
a temperature reading via MQTT from a device, stick it in a database".
Then another serverless service could say 'if you see a temperature over a
certain amount, send an email', and so on.

Because you're paying per transactions it can be really cheap...for
instance, AWS costs $1 per million MQTT messages.   So if you have a device
that sends data once a minute it's going to cost you around 4 cents per
month for message reception for that device.    Oh and just over 4 cents
per *year* to maintain the connection to the device.   And you'll end up
paying for the database storage, etc.   Yes it can add up, but generally at
least at the low end it's cheaper than running a full server infrastructure
for services like this.   Plus you don't have to think about how you're
going to manage the underlying services.

--
- Forrest
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Ryan O'Connor
Exactly. If you run a server then you risk paying for resource allocation
you don't use (cpu, memory).

On Wed, 18 Nov 2020 at 20:50, Forrest Christian (List Account) <
[hidden email]> wrote:

>
>
> On Tue, Nov 17, 2020 at 4:30 PM Neil Cherry <[hidden email]> wrote:
>
>> This terminology is getting worse and having less meaning. Serverless
>> servers?
>
>
> Actually "Serverless"  is a pretty accurate term, and I'm starting to
> experiment with it with MQTT messaging from the embedded world.
>
> In short serverless just says that you tell your cloud provider (Amazon
> AWS, Google Cloud, Microsoft Azure), etc. what you want it to do and don't
> worry about the underlying servers at all.   I.E. things like "When you get
> a temperature reading via MQTT from a device, stick it in a database".
> Then another serverless service could say 'if you see a temperature over a
> certain amount, send an email', and so on.
>
> Because you're paying per transactions it can be really cheap...for
> instance, AWS costs $1 per million MQTT messages.   So if you have a device
> that sends data once a minute it's going to cost you around 4 cents per
> month for message reception for that device.    Oh and just over 4 cents
> per *year* to maintain the connection to the device.   And you'll end up
> paying for the database storage, etc.   Yes it can add up, but generally at
> least at the low end it's cheaper than running a full server infrastructure
> for services like this.   Plus you don't have to think about how you're
> going to manage the underlying services.
>
> --
> - Forrest
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Manu Abraham-2
In reply to this post by Forrest Christian (List Account)
On Wed, Nov 18, 2020 at 1:21 PM Forrest Christian (List Account)
<[hidden email]> wrote:
>
> On Tue, Nov 17, 2020 at 4:30 PM Neil Cherry <[hidden email]> wrote:
>
> > This terminology is getting worse and having less meaning. Serverless
> > servers?
>
>
> Actually "Serverless"  is a pretty accurate term, and I'm starting to
> experiment with it with MQTT messaging from the embedded world.


I guess you need to connect to a MQTT broker. ;-)
And by broker means a MQTT server (eg: mosquitto, or any other
proprietary server) ..
Even if it runs on a virtual machine, it is still a virtual server ..

Just because you do not have that machine on your premises, does not mean that
it does not exist, meaningless!

Someone said; It is all a matter of perception.
Yesterday's fiction is almost today's reality. How true!

Manu
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Forrest Christian (List Account)
The point of serverless is that I'm buying transactions, NOT a server.   It
could be a MQTT transaction, or a web page delivery, or a DNS response or
storage in a Database, or whatever.

Let me see if I can use a different item to describe why I think the term
serverless is fine:

If you were to state that buying power from the electric grid is
"generatorless" I wouldn't have a problem with that.   Technically there
are generators in the power grid, but I don't need to know about them.   As
far as I'm concerned the power arrives at my place of consumption over
wires and I sure don't have to know or care that there are generators at
the other end.  So from my perspective, the electricity I get from the grid
is 'generatorless', meaning I don't have any generators, I don't have to
manage any virtual generators, and I don't really care if there are
generators at the other end as long as I get power.  But yes, technically
it's not 'generatorless' power but again, it could be solar panels and
batteries or a zero point energy source for all I care.

So "serverless" more has to do with what is visible to the consumer of the
service.   I don't know how the service is put together, I don't need to
know if there are any servers at all.   Maybe they've implemented the MQTT
broker in a pile of FPGA's, are those servers?  Regardless of how the
service is architected (whether it has a server on the other end or not), I
don't care, as long as the service I'm paying for is delivered.

In a traditional 'server' architecture, I'm going to spin up a MQTT broker
server, and a database server, and a web server, and probably a few other
servers to do housekeeping work, and pay for all of them to be available
24x7 or as needed.   With serverless, from my perspective I have no
servers.  Yes, these pieces probably exist in some form, but someone else
does that and I don't care if there are zero or a million servers as long
as my workload gets done.

So serverless really means that I don't need to have any servers that I
really know about, virtual or otherwise.   Someone else might, but I'm able
to put together an entire product without knowing or caring if they do or
do not exist as long as the function is completed.


On Wed, Nov 18, 2020 at 1:33 AM Manu Abraham <[hidden email]> wrote:

>
> I guess you need to connect to a MQTT broker. ;-)
> And by broker means a MQTT server (eg: mosquitto, or any other
> proprietary server) ..
> Even if it runs on a virtual machine, it is still a virtual server ..
>
> Just because you do not have that machine on your premises, does not mean
> that
> it does not exist, meaningless!
>
> Someone said; It is all a matter of perception.
> Yesterday's fiction is almost today's reality. How true!
>
> Manu
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>


--
- Forrest
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Manu Abraham-2
On Wed, Nov 18, 2020 at 4:47 PM Forrest Christian (List Account)
<[hidden email]> wrote:
>
> The point of serverless is that I'm buying transactions, NOT a server.   It
> could be a MQTT transaction, or a web page delivery, or a DNS response or
> storage in a Database, or whatever.
>
> Let me see if I can use a different item to describe why I think the term
> serverless is fine:

"Actually "Serverless"  is a pretty accurate term"

"Then another serverless service could say 'if you see a temperature over a
certain amount, send an email', and so on."

The whole point is:

1. Someone else implements the server side for you.
2. you are buying services,
3. you only have a client implementation.
4. You still need to configure the MQTT Server and the client with the
cryptographic keys, if you are doing anything serious over the internet

That does not mean that the system is serverless.
There are other serverless systems, which use P2P modes of operation.
It is still a well defined Client Server architecture.

That's what I was trying to assert.

Just because, I bought email services from a third party, the system topology
is not "serverless". You still need to configure the client for server
connectivity.

When the provider is down, it is termed as Server down, not anything else!

Manu
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Neil Cherry-3
In reply to this post by Forrest Christian (List Account)
On 11/18/20 2:50 AM, Forrest Christian (List Account) wrote:
> On Tue, Nov 17, 2020 at 4:30 PM Neil Cherry <[hidden email]> wrote:
>
>> This terminology is getting worse and having less meaning. Serverless
>> servers?
>
>
> Actually "Serverless"  is a pretty accurate term, and I'm starting to
> experiment with it with MQTT messaging from the embedded world.

Technically I've been doing something like that since x10d. I view a server
as the software providing a service, There is always a physical computer but,
as you pointed out, it's virtual.

BTW, love using MQTT and Node-Red with my Home Automation (IOT). MQTT is at
the center of all communication. Add a little HA Proxy, local DNS, DHCP and
cheap SBC (Raspberry Pi's with SSD) and I have a nice redundant network. :-)
Sorry no outside cloud services. Too dang nosey, so I don't talk to my HA.

My wife is a more difficult customer than the financial institutions I use
have as a Network SE.

> least at the low end it's cheaper than running a full server infrastructure
> for services like this.   Plus you don't have to think about how you're
> going to manage the underlying services.

This is true, but I've retained control and there are some parts that I need
at home anyway.

And to stay on track, I'm working on getting the above documented and added
to my notebooks. I have a lot of old scripts I patched to MQTT that I need
to document. A few of the weather scripts broken when Weather Underground
stopped offering access to the data.

--
Linux Home Automation         Neil Cherry       [hidden email]
http://www.linuxha.com/                         Main site
http://linuxha.blogspot.com/                    My HA Blog
Author of:     Linux Smart Homes For Dummies
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Alan Pearce
In reply to this post by Harold Hallikainen-3
> I got used to counting backwards in hex to do hand assembly of relative
> branches on the MC6800.

Me too, am currently doing it with some z80 assembly with relative jumps ...

Did you then find that when you went to fill out a cheque that you
were writing hexadecimal numbers? Doing similar work around 25-30
years ago I got that engrossed in hex code (I was doing chip level
board repair of microcoded CPUs at the time) that I found I had to
correct amounts I had written as the value of the cheque ... :)

And as to the OPs problem, in my last job, assembling and inspecting
space qualified electronics hardware, my boss had occasion to put out
an advert for a post for an electronics assembler, one of the
requirements being that the successful applicant had soldering
experience, and ideally would be ESA soldering certified. One
application he had was from an overseas person who had a masters
degree, and was most upset when sent a rejection letter, writing back
that he would be the most qualified person we would have (actually he
wouldn't be, the lab where I worked was full to the brim with people
with PhDs, but that was another matter). The saga of communication
only ended when my boss wrote back to him pointing out that one of the
'must have' items was production soldering experience, and he couldn't
even demonstrate that he could solder at all.

On Tue, 17 Nov 2020 at 17:03, Harold Hallikainen
<[hidden email]> wrote:

>
>
> > On 11/17/20 7:47 AM, Manu Abraham wrote:
> >
> >> Sometimes, pronunciations could be misleading.
> >> (I've come across software developers claiming years of experience who
> >> could not count upto binary 3)
> >
> > I'm from NYC and I've known since I was a kid how to count to 4 in binary.
> > ;-)
> >
> > Sorry couldn't resist.
> >
>
> I got used to counting backwards in hex to do hand assembly of relative
> branches on the MC6800.
>
> On the original post, I thought the description of the job was pretty
> good. Applicants just need to pay attention to it. I wonder if you can
> request a couple pages of sample code in C or assembly. Look for nice
> structure, variable names, comments, etc.
>
> Harold
>
>
>
>
>
>
> --
> FCC Rules Updated Daily at http://www.hallikainen.com
> Not sent from an iPhone.
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Reply | Threaded
Open this post in threaded view
|

Re: [EE]: How to find & hire firmware people

Jesse Lackey
In reply to this post by Denny Esterline-2
Hi Denny, using "bare metal" in job description/requirements is good, as
well as ADC, FreeRTOS (not bare metal, but close enough), ISR, etc.  I
have the word "Altium" in my job search settings, for example.

The job leads I get as a both EE design and firmware that are worth
anything come half from recruiters, specifically not the shotgun
approach ones/companies.  Black diamond networks, Oxford, Talent, a few
others have good people.  The other leads are people recruiting for
companies large enough to have people for that task specifically.  Both
categories find me from my resume at Indeed and linkedin.

If you can afford a good recruiter, I think it would help a lot to get a
few good candidates instead of being on the receiving end of the shotgun
from recruiter sweatshops and people applying to every job on Indeed.

Good luck.
J







Denny Esterline wrote:

> The company I work for really needs to bring on at least one more
> developer. So far, I've been very disappointed in the applicant pool. It
> seems that no matter what we put in the job description, 99% of the
> applicants have zero experience with a microcontroller. Even when I include
> something obnoxious in the job posting like the following:
>
> To be considered for this position, you must have an intimate understanding
> of the inner workings of a microcontroller, and the ability to write
> software on "bare metal" (OS-less) systems. In the interview, you can
> expect to be asked questions about registers, memory maps, ADCs, interrupt
> processing, timers, compiler theory, and state machines.
> I get nothing but web developers and Java programmers.
>
> So, my question to you fine people, How and where do you find firmware
> people?
>
> -Denny
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
12