| 20,000+ Fresh Resumes Monthly | |
|
|
| | Click here or scroll down to respond to this candidatesoftware architecture and implementationEMAIL AVAILABLEPHONE NUMBER AVAILABLEI have more than two decades in software and firmware development over a very large spectrum of applications and topics on windows and unix/linux systems. My major tool for application development has been to use Embedded C/C++. I also I have extensive experience with other modern software engineering tools (described below). As well as open source tools Im very experienced with Microsoft develoopment using visual studio. I am seeking new opportunities to develop capable high value systems and subsystems. I like learning new methods and tools, and find it very rewarding to develop high quality products in a stimulating environment. I pride my self on being a C/C++ language expert first.technologies C/C++, STL, BOOST, GNU Tool Chain, GDB, Posix Threads, ThreadX, 0MQ, DKMS, DPDK, CORBA for C++ & Java, HTTP libraries, WindRiver real time for widows.Extensive experience with Visual Studio, Yocto and bitbake for bedded and rtos development Python, Flask, Django, DBMS including Oracle, Sybase, Informix, DB/2, MySQL (MariaBD), Postgresql, CouchDB, SQLite, BerkeleyDB, Redis, 0MQ, Spark, RSLogix 500 & 5000, IEC-1131 languages, SCADA using Wonderware, embedded Linux PIC and SOC programming (ODroid and other ARM processors, Qualcomm Snapdragon series, generic Cortex CPUs, Spartan 6 FPGA), CUDA, Agile Tools Using the Atlassian Stack, RESTful APIs using C++, Java, Python and other web technologies. Heavy use of shell tools and languages including Perl. BASH scripting, Grep, Sed, Awk, automake, autoconf, libtool, & Cmake, Matlab, Gnu Plot, Pplot, and IT++. Some non-academic experience in visible light spectroscopy for non-invasive medical diagnostic applications. positions Embedded Linux Developer Microsoft Remote January 2024 July 2024 Wrote firmware for a new line of tablets Microsoft is developing. The firmware is the basis for all their products moving forward. Developed features on prototype tablet using the IAR toolchain for ARM Cortex M processors, code developed using VS Code on Windows. Used ThreadX for concurrency.Break June 2023 December 2023Much needed extended vacation.Embedded Linux Developer Mevion Medical Remote February 2022 June 2023 Board bring-up and driver development for a new medical device. Ported from a windows/ThreadX environment to Linux STL/Posix threads.Linux Developer CipherlLoc LLC Remote December 2018 July 2021 Contract to help port a privately developed, in-house cipher suite and demo from MacOS to Linux. Demo encrypted packet payloads in-kernel. The design of this suite makes it possible to encrypt any protocol. Concurrency using Posix Threads. Linux Developer Portrait Displays Edmonds WA January 2017 July 2018 Portrait Displays is a leading provider of color correction assembles based on ARM Cortex M powered boards in many leading LCD displays. I was tasked with porting tools and utilities to the platform from x86 code, as well as creating serial drivers and adding Linux kernel options.Linux Developer Kratos Communications Santa Clara, CA January 2017 July 2018 Kratos makes satellite down link bandwidth and signal shaping software for cable carriers, The code base includes heavy mathematical calculations to make an array of quality measurements from the down link side of the signal. Main role was to help develop a new product for Kratos that packaged portions of their software suit, which is windows-based, into an embedded ARM (a Xilinx Spartan 6 fpga) board. Maintained the products kernel and in-house modules that enabled SatDSP to work on the system through both in-tree development using qemu emulation plus a cross compiler tool chain, also developed partially in- house. Helped ensure digital signal processing libraries continued to deliver consistent results over this translation. DPDK was used to efficiently transfer data from node to node. Software Developer Spectros Corp. San Jose, CA January 2016 October 2016 Medical device company that measures in-hospital patient ischemia using a unique, white-light spectra methodology. This company has several medical patents. Managed forward development and created a new code base in C++ as the original code was based on the VB 6.0 stack and was unmaintainable. Added new features including true threading and parallelism, and re- wrote the client spectrometer library in modern C++11. Also added a library that exported results of monitoring sessions for clinical studies in XML, and replaced the aging serial sensor code with a newer USB based kernel module. The interface was a 7 touchscreen, so a new requirement was re-writing the UI in C++ using at first Qt, then GTKMM. Introduced Python for the purpose of automating the build since the code was being ported from Visual Studio and its in-GUI build procedure. Also used Python to create a test-driven development harness. Ported curve-fitting routines from Matlab to C++ 11, and employed an OSS DSP library to separate the spectra of Oxygen from other components of blood plasma which was used to graph the ischemia level.Software Developer MatterFab, Inc. San Francisco, CA September 2013 - January 2016 Designed and implemented control software for our 3D metal printer using a in in-house distributed computing framework based on the 0MQ (http://zeromq.org) open source messaging API; this enabled the team to create a distributed processing framework of for the 3D model files (STL & OBJ) for print preparation in much less the time it takes for a single processor to do the same work, this was accomplished by dividing up any one model file among the number of GPUs that were available at any time. Created a windows application to view and edit those model files using OpenGL and MFC. Worked in parallel with several mechanical engineers to bring this printer up from the drawing board. Technologies used also include Qt/QML, I2C, USB, and serial protocols. lyI also implemented a build environment that automated the construction of OS base for many of our linux modules using bourne-again & Perl shell scripts. IP (TCP/UDP) networking was a major factor in getting this distributed processing framework functional. Use of .NET/C# to control a video stream from 3 1080dp cameras to view the lazing process and to historize quantities (temperature, lasing power, etc.) so as to make process reproduction possible and to monitor quality. Wrote motion control routines to Beckoff controllers using I2C bus and serial (RS232) RTOS protocols. Leveraged existing Android NDK/OpenGL development experience to create an app to visualize the 3D model files that were on the printer queue. This effort was not completed before the company was moved to Seattle. Software Engineer Vacom Technologies, Inc. Los Angeles, CA March 2007 - July 2013 Implemented serial protocols for real-time industrial control applications including MODBUS, ProfiBUS, CANBUS, DNP-3 IEC- 61850, others. Co-engineered Windows application for control of industrial electrical equipment which used XML configuration, technologies used included Microsofts MSXML2 libraries, embedded windows for real-time applications, AngstromOS, GNU tools for ARM, oscilloscopes, wave generators, bench power supplies. Software Engineer Entrust Technologies, Inc. Los Angeles, CA August 2003 - March 2007 After being acquired by Entrust the team were put on various security products, new development and existing maintenance. Due to previous experience and enthusiasm for POSIX oss including the BSD kernel, efforts by Sun Microsystems to popularize their x86 port of Solaris, and a new little kernel gaining traction in the OSS community called LINUX. Asked with the help of two other developers to create an OSS version of Entrusts key management console. Other new development included some PKS utilities and some research into new encryption algorithms.Software Engineer enCommerce, Inc. San Mateo, CA June 1998 - August 2003 enCommerce was the original company that created web portal getAccess and was acquired by Entrust in late 1999. Work withVisiorb led to an invite to join Entrusts PKS team in 1998. Software Engineer Visigenic Software, Inc. San Mateo, CA Apr 1995 June 1998 Work included porting Microsofts original C++ code to HP-UX, AIX, Solaris, Irix, and other POSIX compliant OSs. Helped to create Visiorb for C the first commercially produced CORBA ORB sdk. publications http://www.codeproject.com/script/Articles/MemberArticles.aspx?amid=8089272 http://www.codeproject.com/Tips/1064901/A-light-wieght-thread-safe-properties-class-for-Cp http://www.codeproject.com/Articles/1064952/Kernel-modules-using-autoconf https://play.google.com/store/apps/details?id=com.hellotechie.PassMaster education CSU Chico, California, Bachelor of Arts, Electrical Engineering and urls https://github.com/interval1066, https://LINKEDIN LINK AVAILABLE, http://interval.atwebpages.com/, https://twittech.wordpress.com/ https://plus.google.com/u/0/112379479251764128265/posts http://www.gamedev.net/index.php?app=core&module=search&do=user_activity&mid=224453 |