ONSITE/SENIOR FULL STACK ENGINEER/FULL-TIME
Tempo Automation is reinventing the way electronics are developed. Our customers build rockets, drones, medical devices, and much more.
We give our customers the physical equivalent of a fast compiler to turn their designs into real circuit boards quicker than anyone else.
We are currently hiring a Full Stack Software Engineer with proficiency in python, REACT, Django, Postgressql, etc.
In working towards our vision of a seamless and transparent customer experience, we run up against all sorts of obstacles in both software and manufacturing. Here are some problems we've solved so far:
CAD Parsing & Feature Extraction: extracting features from a customer's CAD file is one of the first things we have to do to provide a great customer experience, but because much of the data we extract is geometric, this process can be very computationally intense. Parsing is also difficult, since there are many different CAD programs, each typically with its own distinct file format.
Automatic Quoting: our supply chain includes multiple vendors with complex pricing schemes, which makes generating detailed quotes for a given circuit board design very difficult. Solving this problem requires great UX as well, since we show customers quotes that are far more detailed (i.e. line-items at the individual component level) than any other manufacturer.
Process Traceability: our factory technicians need to record what they did and when, but doing so on a paper sheet or in Trello is time-consuming and often inaccurate. We've built a tailored mobile workflow management app instead that, as a bonus, gives them context-specific information about the design while they're performing certain manufacturing steps.
We have so many interesting problems ahead, including:
offering real-time, automated manufacturing feedback based on certain parameters of our customers' designs. Think linting for hardware.
optimizing our factory processes with statistics and scheduling algorithms.
encoding the three-dimensional structure of each component (i.e. resistors, capacitors) that we place on customers' boards, to ensure minimal manufacturing defects.
automated optical inspection faster than anyone in the industry.
If interested, please email me at rachel@tempoautomation.com
ONSITE: SENIOR FULL STACK ENGINEER
Tempo Automation is reinventing the way electronics are developed. Our customers build rockets, drones, medical devices, and much more.
We give our customers the physical equivalent of a fast compiler to turn their designs into real circuit boards quicker than anyone else.
We are currently hiring a Full Stack Software Engineer with proficiency in python, REACT, Django, Postgressql, etc.
In working towards our vision of a seamless and transparent customer experience, we run up against all sorts of obstacles in both software and manufacturing. Here are some problems we've solved so far:
CAD Parsing & Feature Extraction: extracting features from a customer's CAD file is one of the first things we have to do to provide a great customer experience, but because much of the data we extract is geometric, this process can be very computationally intense. Parsing is also difficult, since there are many different CAD programs, each typically with its own distinct file format.
Automatic Quoting: our supply chain includes multiple vendors with complex pricing schemes, which makes generating detailed quotes for a given circuit board design very difficult. Solving this problem requires great UX as well, since we show customers quotes that are far more detailed (i.e. line-items at the individual component level) than any other manufacturer.
Process Traceability: our factory technicians need to record what they did and when, but doing so on a paper sheet or in Trello is time-consuming and often inaccurate. We've built a tailored mobile workflow management app instead that, as a bonus, gives them context-specific information about the design while they're performing certain manufacturing steps.
We have so many interesting problems ahead, including:
offering real-time, automated manufacturing feedback based on certain parameters of our customers' designs. Think linting for hardware.
optimizing our factory processes with statistics and scheduling algorithms.
encoding the three-dimensional structure of each component (i.e. resistors, capacitors) that we place on customers' boards, to ensure minimal manufacturing defects.
automated optical inspection faster than anyone in the industry.
If interested, please email me at rache@tempoautomation.com
Our company, Tempo Automation, is creating the fastest and most seamless development experience for electrical engineers. We're building a world where electronics development can move as fast as software development by providing 3-day turnaround times for custom assembled circuit boards compared to the current industry standard of 2 weeks.
Electronics development today is slow and tedious, because low-volume orders are forced through a high-volume process. We’ve built a process optimized for low-volume, allowing you to cut down development times and enjoy a seamless ordering experience.
Please visit our website to learn more: https://jobs.lever.co/tempoautomation/7e1e86a2-a3af-4869-87ab-0f51d6ed36b1
Recently learned a lot about software, theory, process and management in the design, iteration and manufacturing of custom printed circuit boards.
Having climbed that mountain, I'm currently diving in to industrial automation: not software automation, but both off the shelf and custom robotics and factory equipment providing manufacturing 'unit operations' for working with metals and polymers. It's quite impressive how little integration currently exists between products from different vendors. There is a huge opportunity here for a software-world startup. Competing concerns include safety, reliability, problem detection, automated issue resolution, machine servicing, tool longevity, vendor desire for lock-in, supplier desire for lock-in, noise, dust, finish, speed, logistics, HR, scalability, cost, etc.
Our customers are electrical engineers -- electrical engineers on small teams that need to move faster with fewer errors, all the way up to senior EEs with a few decades of experience who want to automate design validation to ensure consistent quality.
We haven't found programming skills to be a big blocker. You don't have to be an elite coder to use JITX. Most EEs have banged out a quick matlab or python script at some point, which is plenty of experience. We worked a lot on the semantics of the language to make it correspond to how EEs think about designs, which I beleive helps.
Not a one-way street -- you can flow designs back and forth between JITX and the CAD tools we support. It was hard for us to get working, but it is important. At least until we have all of PCB design fully automated.
Our goal at Plethora is to make hardware as easy as software. One question we ask ourselves is why can a small team of software devs push out an app in a few days / weeks when a hardware product takes a sizable kickstarter/VC round and months / years? It comes down to:
- great tools
- fast iteration
- easy deployment
- straightforward scalability
To achieve this kind of agility with hardware, this means removing the friction at every step of the product lifecycle.
One half is in the design & ordering of custom parts. CAD packages today are powerful and it’s very easy to design beautiful parts that are completely unmanufacturable. The Plethora add-in analyzes parts in a few seconds, provides helpful hints on manufacturability, instant pricing and ordering. We went with a plugin for existing CAD programs because getting people to switch CAD programs is like asking a programmer to switch code editors - extremely difficult unless the value of the new tool is orders of magnitude greater than that of the incumbent.
The other half of the friction in manufacturing is when the part enters production. Plethora isn’t just a pretty face on a traditional machine shop - we’ve been working for years to automate the extremely manual process of converting a 3D model into instructions for a machine to produce. This automation enables quick turnaround and no minimum order quantities - which allows teams to have more iterations and faster deployment of their products.
Disclaimer: I'm an engineer at JITX. The core technology is a programming language for designs. It's a low level language for describing schematics and circuit boards, the kicker is that it's fully parametric and embedded into a high level language, which is stanza. The pitch I would give is that we're trying to do for hardware what GCC or NodeJS did for software engineering - everyone is hand coding assembly and manually checking it, we're building a compiler and set of libraries for getting things right and doing it fast.
I wouldn't just call it AI to automate circuit board design. We're definitely working on it and hiring folks for the tough optimization problems, but a lot of what we do is allow engineers to encode their expertise as reusable software components. I would say we're language and algorithm designers first, married to hardware designers.
For example, one of the cooler projects we did early in the pandemic was a mechanical keyboard designer that takes the JSON output of Keyboard Layout Editor and compiled it into a working circuit board and generated enclosure. I have it sitting in my office right now.
I may be overly biased but it's an awesome place to work. There are tons of interesting problems and great people. We have hardware experts designing boards, coming up with checks (think unit tests for hardware to automate design review), software folks doing our front end (a language server, custom VS Code extension to view circuit boards in a text editor), component selection, automatic placement, topological routing, web front end and backend, interesting and challenging DevOps, even real world compiler engineering - you name it. Every week is like the best course you've taken in CS - there so much to learn.
We're well funded and hiring. Since I joined in 2019 we've more than tripled in size and hiring! And frankly there's not many people working on this crucial problem. My email is in my profile if this sounds interesting to anyone.
I am a board level design engineer and the work is similar in many ways to software. It is very numerical and requires attention to detail.
I spend 25% of the time talking about requirements to other engineers, 50% comparing components to use with datasheets, 12% in Altium Designer and 12% buying components and PCBs.
Huge pain #1: the unbelievably slow process of manufacturing PCBs. Imagine that you were back in the old days of computing where you had to use punch cards with machine code and you had to give your stack of punch cards (your "program”) to the punch card operator. He would run it overnight and you would get your results the next day. If your program failed, then you have to meticulously comb through it and debug in your head. This is modern-day PCBs. Holes in a board that take forever to make. Then you have to pay $80 shipping to get them next day or you can pay your engineers to sit around doing nothing. And the PCB might not even work. Learning feedback loop is very slow.
If you want to do anything remotely interesting like via-in-pad or four-layer boards, first you have to wait at least 24 hours for a custom quote. Half of PCB vendors don’t just give you the formula to make your own quote. Then you have to pay either $1000 and 2 days or $200 and 2 weeks to have 5 copies of your design.
Huge pain #2: reinventing the wheel. When I open a datasheet, I have to read about the device. The pins, the maximum ratings, the application note “gotchas” like “don’t leave this pin floating or else the chip will be unpredictable!” Then I have to make the schematic symbol and footprint by hand. That means manually entering IPC package dimensions into Altium like a braindead zombie. Every package is slightly different. I cannot tell you how many Texas Instruments DC-DC converters I have hooked up. I have no idea why device manufacturers don't just hire someone full-time to make open-source 2D and 3D footprints for the top six CAD tools. SnapEDA and Altium Vault are trying to do this, but the footprints are flawed and they are outright missing a lot of parts. I cannot tolerate mistakes when each board costs hundreds of dollars. The device manufacturers already make footprints to test their parts. Why don’t they share them??
Huge pain #3: High barrier to entry. Very expensive software. In software engineering, professional tools like git, Visual Studio, Eclipse are all free. You can pull code at home from Git and start contributing immediately. The only barrier to entry is the time you need to understand the existing codebase. Even in firmware you can download Code Composer Studio or PSoC Creator for free.
In board design, you need to pay $300 for EAGLE or $5000+500/year for Altium if you’re serious. Sometimes OrCAD goes on sale for $300. Lets say you want to simulate Bitcoin mining ICs frying themselves in their own heat. Or maybe you want to know the radiation pattern of your antenna. You can pay another four digit price tag for simulation software like CST or just copy a previous design like a zombie. Upverter is trying to solve the upfront cost problem with their $125/month SaaS subscription pricing, but I tried their editor 3 months ago and it was 15 FPS with the example board. Not cool. KiCAD is an open source alternative to Altium but as far as I know it is nowhere near comparable.
Huge pain #4: ordering components and PCBs. In my last project I had to order components from China. Ordering from China is not very easy with the language barrier, bad spec sheets, time difference. Alibaba is the place to go for ordering from China, but all the prices are “Contact us”, which means you have to give all your information blah blah blah until you get an email with the price and then pay with wire transfer. Sometimes you get lucky and you can find what you want on AliExpress and pay with credit card.
But the tradeoff to all of this is that if I do it correctly, I can hold something in my hand and give the software engineers a new API to play with. The APIs all stem from the hardware. The work is often more fundamental with equations and physics rather than purposeless corner cases I had to consider when I was in programming. And hardware often has the chance to be featured on the box of a product rather than software which is all just assumed to work. It feels more meaningful.
This is not my first, or even second position. I have several years of experience. The company paid good lip service to proper software methodologies in interviews.
On top of this is a monolithic object model. With every device produced by the company (the company does PCB fabs) supported within the code base, literally hundreds of thousands of devices.
I think the first step is making EDA (electronic design automation) more accessible. Right now, even if you could do the fabrication yourself, doing a real, useful design would be just as challenging because the tools are all proprietary and expensive.
We have the same challenge, except that in our case the issue is hardware.
Hardware comes at a very fixed iteration speed, usually around 3 months for something of moderate complexity. That's how long it's going to take to do schematic capture, layout, pcb manufacture, board population and bringup. Even if you can speed up this iteration process, there is still a sizeable financial cost of going around the loop.
This means that at a project level you need to do a certain amount of requirements capture before you start work on electronics. You can then run your software in a fairly agile manner 'inside' the project, hoping that the inevitable changes in requirements can be dealt with in software. Obviously you design your system in such a way as to increase that likelihood.
It is amazing the number of hours sunk, even in our little business, into defeaturing or really just remodeling, into a more experimentally conductive fashion, any of our prototypes which involve complex lofted multi-body assemblies. This just adds another layer into the design-data stack between the design phase and cam phase, which all needs to be maintained. I'll be quite interested to see their software evolves.
Mechanical engineering projects have thousands of parts. About equivalent to a chip with a shift register and a serial port. Or a piece of software with a small array of integer variables and a loop, compiled to assembly language.
Not so say they aren't challenging. But software is billions of parts, and its freaking incredible we can get anything to work at all.
I can possibly help you with some of this, the majority of things I've been involved in have been hardware, not software.
I have a decent mutual NDA if you want to chat.
Not to be arrogant, but I'm busy enough and happy enough with my current gigs that I don't have any motivation to steal your ideas ;)
I've been through most of the UL, FCC, CE-Mark and similar cert processes, done parts relating to CNC, plastic injection mold, vacuum-form, PCB design/layout/stuffing, packaging and so on.
Wow, this is awesome! It's one of those thoughts that everyone has- so much of making a PCB is totally menial and/or institutional, like part selection and supporting circuitry. Death by a thousand cuts, but many small problems (like placement or autorouting) are actually quite hard. Taken together it's an intimidating task.
This is the next big leap in design for software, electrical, and mechanical things: semantic descriptions directly to solutions.
Prototyping is an excellent application. Whats your support roadmap look like? Add more chips so you can continue making small widgets cheaply? Any plans to get into higher-risk design work? If you can reliably deliver high frequency/radio designs near FCC limits, that frees up a lot of RF engineers. For anyone who doesn't know, the cost to navigate FCC regulations is huge, and testing is worse (10k tests with months of wait, worst case). Probably even more people would be interested in high power designs, given the surging popularity of lithium personal transport and vehicles. Mains voltage/mixed signal designs would also be huge, but that's a whole other kettle of bears. I'm sure you've got internal metrics tracking what you all spend the most time doing and where you're bottlenecking. Even past the huge tasks of advanced engineering there are opportunities to integrate with 3d printing, automated enclosure or laser-cut design. I suspect/hope at some point in the future you guys will be hiring a LOT of people!
I'd love more examples, even on the front page. As long as they're relatively dense, readable and well-laid they'll inspire a lot of trust in engineers. Also, I think test fixturing is a strong asset and you guys should feature it more heavily! I'm not sure how you guys do it, but I'd love to see real examples. It might be the best suited automation of the things you guys do. Designing a comprehensive test fixture can take almost as long as designing the actual part, but with the basic functionality defined you could generate test routines, circuits, firmware, and jigs automatically. And my favorite kind of test jig looks like this[1], so gerbers are all I need to be happy.
I prefer clips to sliding holders like that, but I couldn't find a picture for reference. I like to put a few pads around the corners, then solder a small tab to use as a clip so the PCP only has to be held down on one side. Ideally I'd have a detent on the other side but I've never had a long enough test routine to warrant figuring it out.
The author should look at how EDA (electronic design automation) tools are built. They have many of the same challenges but they also have a lot of solutions
All of the stuff this guy says. My dad's been running a robotics engineering
company - http://www.primeengineering.net - for nearly as long as I can remember
(well, he worked for a company that was bought out by Siemens prior to that).
I've been inundated with the knowledge of what it takes to produce doohickeys at
scale, whatever those doohickeys may be, since I was like 5. It's fascinating,
and I wish more people were cognizant of all that goes into our modern society's
niceties.
When he installs new equipment, there's a sub-day shutdown usually, to install
massive lines of equipment into a warehouse. He's always busy on, say,
Christmas, because a warehouse can typically just barely manage to afford to
shut down for 16 hours on that day (or other holidays) since the warehouse
employees want to be at home with their families. If there are problems with
the installation (and there always are, because tolerances on everything are so
tight) then they have to be resolved right there in a crazy short timeframe.
I wrote some PLC software for him back right out of high school, to manage a
heat element for a shrink wrapping portion of a particular line. We got a
certain input from the other components in the line (so the spec said) to
specify how long we needed to run before cutting, in milliseconds. Their specs
lied, and they weren't sending us anything remotely like a serial data stream
specifying the time before cutting, so while everyone was installing the
hardware I had to derive from the data stream we could see what the timing
needed to be and 'test' it (more 'run some plastic and cut it and measure it'
tests than unit tests, yes?). It was super stressful, but it was also insanely
fun. Once the install was done (16 hours on the dot, loaded the code as the
timer ran out) the machinery started and has run uninterrupted for on the order
of 12 years now. Most people aren't aware that this is the sort of thing that
goes into modern manufacturing :)
For advanced designs with lots of compliance requirements, our tool isn't yet able to fully-automatically compute the final design. For these designs, the tool does the parts it can and leaves the rest to be handled by an engineer.
We have an internal scoreboard that tracks how much of each job we successfully automate, and we steadily improve our algorithms to make progress on that.
We give our customers the physical equivalent of a fast compiler to turn their designs into real circuit boards quicker than anyone else.
We are currently hiring a Full Stack Software Engineer with proficiency in python, REACT, Django, Postgressql, etc.
In working towards our vision of a seamless and transparent customer experience, we run up against all sorts of obstacles in both software and manufacturing. Here are some problems we've solved so far: CAD Parsing & Feature Extraction: extracting features from a customer's CAD file is one of the first things we have to do to provide a great customer experience, but because much of the data we extract is geometric, this process can be very computationally intense. Parsing is also difficult, since there are many different CAD programs, each typically with its own distinct file format.
Automatic Quoting: our supply chain includes multiple vendors with complex pricing schemes, which makes generating detailed quotes for a given circuit board design very difficult. Solving this problem requires great UX as well, since we show customers quotes that are far more detailed (i.e. line-items at the individual component level) than any other manufacturer.
Process Traceability: our factory technicians need to record what they did and when, but doing so on a paper sheet or in Trello is time-consuming and often inaccurate. We've built a tailored mobile workflow management app instead that, as a bonus, gives them context-specific information about the design while they're performing certain manufacturing steps.
We have so many interesting problems ahead, including:
offering real-time, automated manufacturing feedback based on certain parameters of our customers' designs. Think linting for hardware. optimizing our factory processes with statistics and scheduling algorithms. encoding the three-dimensional structure of each component (i.e. resistors, capacitors) that we place on customers' boards, to ensure minimal manufacturing defects. automated optical inspection faster than anyone in the industry.
If interested, please email me at rachel@tempoautomation.com
reply