From front end dev to embedded software?

Had an interview at a entry level position for an embedded software programmer, however there is a twist! I’ve almost finished everything from html to react on Mosh’s front end pathway but they are saying for my technical interview it has to be in embedded C language. I’m getting good with JS but know nothing about C. They did say I can take time to prepare if needed as the position is isn’t time sensitive. They do expect college level coding though (which i know isn’t much by most standards) but do expect me to be trained and productive in 90 days to debug.

So mosh has no C tutorial, could I go from JS to C in a month and be interview ready? Is it worth Learning C right now when i’m not even finished with front end? What would benefit me the most in the long run?

JavaScript derives some of its syntax from C (and some from Java). But, aside from some syntax similarities, they are vastly different languages. For one thing, JS is an interpreted, dynamically-typed, part-OO-part-functional language with automatic memory management (garbage collection).

C, on the other hand, is none of these things. It’s what I call a Batteries Not Included type of language. For instance it’s a compiled language, meaning you can’t just run a .c source file like you can do with a .js file and Node. You must first compile it and then run the resulting binary executable file. Also, for every variable you create in a program you must explicitly allocate the memory and then deallocate it when it’s no longer needed (or you get memory leaks). There’s much more (static typing, pointers/references, structs, etc) that I won’t get into.

So C is different and requires thinking about a lot of things that JS just handles for you. But different isn’t bad. In this case the differences give you much more control allowing you to write more memory-efficient programs. This is why C is used in embedded systems where memory is often more scarce.

My advice is not to worry about what someone else thinks and just give it a shot. What have you got to lose? Google for phrases like Javascript developers guide to C to start with and see if you can find a primer. I’m also betting there are also some free courses out there to help you learn. It looks Like CodeAcademy has something. W3Schools as well. Good luck.

2 Likes