If it’s out there, we’ve probably shipped a product using it. surfaceink’s firmware team is comprised of highly experienced professionals who have successfully tackled an extremely broad range of technologies and products over the course of their distinguished careers, and it’s this expertise that ensures your product architecture and implementation will get done the right way, the first time.
Our firmware engineering process starts well before the prototypes show up. As with all surfaceink projects, we begin by capturing both the explicit requirements and the subtle implications of the desired end product experience. Working closely in tandem with our surfaceink ID, ME, and EE counterparts, we scope everything from power draw to CPU cycles and storage requirements to help inform block diagram architecture and eventual component selection.
In many cases, we will prototype key functionalities prior to completing system architecture in order to validate assumptions and confirm that we’re on the right path. We like to get important parts of the user experience into your hands early, so that expectations remain aligned and you are given the opportunity to provide input and adjust direction for optimal product market fit.
Mobile integration and cloud services — or frequently both — are critical tie-ins to almost every product we do. Although we do not do backend development, we are deeply informed and knowledgeable in the practicalities of connectivity, security, and protocols. We partner with your team to design service interfaces that will work for you in the field. On the mobile side, we will develop any device interaction libraries and are also able to create functionality demonstrators or shipping apps if desired.
Following agile development principles, we keep our customers in the loop as we progress into active coding and development. Depending on your desired level of involvement, this could range from deep collaboration through a shared github repository to receiving weekly end user builds for walkthroughs and feedback. You’ll always know where we are, what hurdles remain, and what our plan is for wrapping them up.
As a product reaches the feature complete milestone, development focus turns from implementing features to refining the experience. We share your pride in putting a well-executed experience into the hands of your customers, and we make sure that our handiwork reflects this level of care as we put the finishing touches on performance, power tuning, and interface polish.