Software Engineer ll
Job TitleMidé Technology Corporation is seeking a skilled software engineer to join our team in Woburn, Massachusetts.Job DescriptionMidé Technology Corporation, located in Woburn, Massachusetts, is an engineering research and development company with a focus on sensors and smart materials. Our enDAQ sensor line produces high-quality battery powered data loggers to record and analyze physical systems for research and development. Additionally, our Hutchinson Data Services line uses similar sensors to monitor specific large-scale systems such as wind turbines, high-value shipments, or manufacturing plants. Engineering has been deep in our culture since we were founded over 30 years ago, and people at all levels of the company have enthusiasm for the technical details of projects.Midé has released several open-source Python libraries intended for use with our enDAQ data recorders: ebmlite, for decoding and encoding EBML data; idelib, for working with .IDE recording files from enDAQ devices; endaq, which provides more advanced functions for processing and analyzing data recordings, including plotting characteristics such as pseudo-velocity shock response spectra; and endaq-device, for configuring and controlling enDAQ hardware. We look forward to making further contributions to open source. The candidate should be comfortable working in a small team with a variety of backgrounds and should be able to help translate user requests into software requirements. Applicants should be prepared to submit a code sample, either with the application or upon request prior to the phone screening. Samples may consist of links to GitHub/BitBucket repositories. Applicants may also opt to complete a brief coding exercise.This is an on-site, full-time position. Although, Midé offers part time remote work, this position is full-time and primarily on-site. We have a spacious and active office with mechanical and electronics labs. Local applicants are preferred.RequirementsCandidates must:Have a Bachelor's degree or equivalent experienceHave 2-6 years practical experience, with a solid understanding of the Amazon Web Services platform and some Python experienceBe a US person (citizen, green card holder, or permanent resident) or obtain an Export Authorization from the appropriate government agency.Be able to demonstrate an understanding of object-oriented programming concepts and their applicationHave fluency in at least one object-oriented programming language: Python (preferred), Java, C++, C#, Swift, etc.Have experience writing large, reusable programs in PythonHighly PreferredThe following areas are important and may be used in this position's projects over the next year. The ideal candidate will have experience in these areas, but we will not reject applicants for lack of experience in these areas:Experience working with Azure, particularly IoT Edge, Event Hub, Functions, and databasesNetworking and small-scale server design experience, particularly using MQTTObject-oriented techniques to handle the management of many different configurations of sensorsExperience using Python to efficiently handle large data sets and real time processing, particularly using NumPyTest techniques to manage integration into a growing code base, particularly using PyTestSignal processing, such as Fourier Transforms, PSD, filters, and resamplingExperience with user interface design and the graphing and display of dataPreferred SkillsThe following areas represent where the candidate could grow over the long term. Candidates with experience in one or more areas are preferred:Python debug experience using an IDEKnowledge or experience with some of the following Python packages: Numpy, SciPy, Plotly, Pandas, wxPythonKnowledge of statistical analysis techniques such as multi-discriminant analysisExperience with AI techniques in data processing