DornerWorks loves to build great software. Our team of keen engineers stays up-to-date on the latest software engineering techniques and technologies, and thrives on embedded systems. We have the experience to understand the art of software development as well as the nuts-and-bolts science of software engineering. Maintaining the proper balance helps us to succeed, completing projects on-time, within budget, and satisfying your expectations.
Our software “artists” intuitively understand the best tools and techniques for a task and how to apply them. We have the experience to understand how the subtleties and complexities of the real world will impact the software.
Our “nuts-and-bolts” starts with the project requirements. The requirements may change, of course, and good communication about those changes will help us build what you want. Good requirements definition and management is the cornerstone of any project.
We like to develop software iteratively, giving you incremental releases, so that you can provide feedback on progress early and often. An iterative approach embraces change because those changes can be implemented incrementally, starting with prototype modeling all the way through to production.
DornerWorks has experience writing software for a wide variety of embedded processor architectures, including PowerPC, Cypress PSoC, ARM, Microchip PIC, and TI DSP. We have worked within RTOS environments, including VxWorks, Windows CE, QNX, and some embedded flavors of Linux. Our engineers are comfortable without RTOS environments where necessary, providing custom solutions for the task-switching and memory services the RTOS would otherwise provide. Our experience includes work at the application level, the board-support level, and at the device driver level. DornerWorks specializes in platform-enabling technologies such as the Board Support Packages (BSP), Hardware Abstraction Layer (HAL), device drivers, and network protocols.