Python Developer
Published | February 2, 2024 |
Location | Lanham, MD |
Category | Default |
Job Type | Full-time |
Description
Overview: The Python Developer reports to the Chief Technology Officer. Position is part of the R&D team and involves significant interfacing with the operations teams. This is an opportunity for someone interested in developing non-AI software tools in a fast-paced, high-growth AI company. We are Private Equity owned and growing very rapidly. This person will use Python3 and Linux to develop software tools, GUI and routines, to facilitate the setup and testing of hardware components (camera, radar, etc.) of an on-edge image processing system. She/he will also be responsible for initial deployment, maintenance, and updates of the software components. Responsibilities: Collaborate with other members of the R&D team to document and test existing setup routines for camera, radar, illuminators, etc. Troubleshoot and improve the current practices. Develop intuitive GUI tools or the above routines to allow the operations team to perform them without any direct use of CLI or python code. Prepare a brief and clear user guide for the GUI tools. Develop a comprehensive routine for automated deployment of all software tools (proprietary code, third-party libraries, packages, firmware, etc.) to a multitude of our systems on the edge. Prepare a brief and clear user guide for the software deployment routines. Develop tools for collecting data about the health and performance of the system and for sending such data to a remote server. Monitor and maintain a small number of test and production systems. Quickly and clearly report any anomalies or failures detected on the deployed systems. Work closely with other members of the R&D team to gather additional information, replicate problems, and test new solutions. Qualifications: Fluent in Python3 (Pandas, NumPy, OpenCV, Matplotlib, Multiprocessing). Minimum 3 years hands-on experience coding solutions for engineering problems. Hands-on experience with automated software deployment on the edge. Hands-on experience with creating GUI tools using Python, C++, Tkinter, or Qt. Hands-on experience with troubleshooting connections and interactions between hardware components (computers, modems, web relays, USB hubs, power supplies, sensors, cameras, radars, etc.). Bachelor's degree in software engineering, Computer Science, or other relevant area with strong coding experience. Master's degree is preferred. Education can be substituted by demonstration of strong understanding and experience in solving engineering problems relevant to the position. Comfortable working and deploying under Linux. Comfortable using GitLab and Ansible. Demonstrated ability to finish tasks on time with high quality coding. Must be a fast learner with strong analytical and troubleshooting skills. Available to work on-site and visit locations of deployed systems when necessary. Nice-to-haves Recent hands-on experience with porting python code to Nvidias Jetson devices or ARM processors in general. Image processing, camera and lens controls.