Principal Software Engineer
Current* Advanced software development and providing mentorship to team members* Enhancing productivity through Agile development methodologies* Optimization of existing software through strategic refactoring* Implementation of cellular communication software on Linux platforms* Application of design patterns in C programming for efficient software design* Developed a Linux based router equipped with embedded Linux, focusing on cellular communication technologies such as 5G SA/NSA, LTE Advanced, and 3G. Specialized in all aspects of cellular router development and testing, from low level Linux drivers to user space applications.- Worked on a cloud computing application which allows servers to communicate to remote devices. These remote devices collect data from sensors via a ZigBee network and communicates the information collected to remote servers in the cloud. The remote embedded devices run Fedora Linux and are managed remotely over the cloud.- Ported embedded Linux to several new platforms based on Freescale i.MX processors, customized kernels, modified device drivers and wrote user documentation.- Managed a group which worked on the implementation of a development kit with a custom ASIC based on an ARM9 core running the ThreadX RTOS. - Implemented and debugged a WLAN USB PCIe adapter card which allow ARM9 platforms to have an optional plug-in WLAN card.- Implemented and maintained a USB host driver for an ARM9 platform, utilized USB analyzers and oscilloscopes for debugging.- Produced specifications, design documents, unit test plans and API reference guides.- Worked in an Agile software development environment.- Experienced in setting up build systems, automated builds and test environments.- Involved with board bring up and debugging peripheral drivers