Sorry, this listing is no longer accepting applications. Don’t worry, we have more awesome opportunities and internships for you.

Software Engineer

Vision IQ

Software Engineer

Houston, TX
Full Time
Paid
  • Responsibilities

    Job Description

     

    Job Title: Senior Software Engineer

    Location: (North) Houston, TX

    Duration: Fulltime (On site required, 0-10% travel)

    Education and seniority: 5+ years of experience, BS Software/Electrical/Computer Engineering

    Product line:

    We are hiring for immediate contribution to Vision IQ ( https://www.visioniq.co/ ). The team is currently engaged in a redesign for a 2nd generation, this will involve porting current deployed code to new architecture, diagnose issues and improve overall performance of the system. As we bring improvement to every part of the system, be ready to face challenges exploring the boundaries of performance offered by the latest technologies.

    We occasionally contribute to other product lines, especially where particular technology expertise is needed.

    Hiring expectations:

    We expect to hire more multiple people and the list of skills and responsibilities is (clearly) not intended to be fulfilled by a single person. In fact, all team members, including currently working on the system will be assigned tasks/responsibilities from the list below to optimally leveraging their strengths and interests. We intend each person to both bring and develop strengths in particular areas to complement the development and fill knowledge gaps. The list additionally provides an overview of the skills we enable as immediate technical growth opportunities.

    Skills and responsibilities:

    The bold font indicates the skillset we currently prioritize.

    Software Development:

    • IMPLEMENTATION OF C# (.NET CORE 3.0+) SOLUTIONS FOR EMBEDDED DEVICES AND SERVER-SIDE APPLICATIONS; FOCUSED ON PERFORMANCE

    • REFACTORING OF CODE BASE TO A MATURE AND PRODUCTION READY STATE LEVERAGING OBJECT ORIENTED PARADIGMS INCLUDING CREATION OF INTERFACES FOR TESTING, DESIGNING ERROR HANDLING, AND IMPROVING MANUFACTURABILITY THROUGH EASY OR AUTOMATED CONFIGURATION

    • DESIGNING AND IMPLEMENTING MINIMAL FLEXIBLE ARCHITECTURE FOR THE EMBEDDED DEVELOPMENT

    • DOCKER EXPERIENCE – CREATING DOCKER FILES, OPTIMIZING FOR REDUCED CONTAINER SIZE, ETC.

    • AZURE PLATFORM EXPERIENCE (OR SIMILAR); EFFECTIVELY USING CLOUD RESOURCES: CREATING PIPELINES, MANAGING CODE REPOSITORIES, SETTING UP TEST ENVIRONMENT FOR BUILDS, MANAGING CONTAINER REGISTRIES, STREAMLINING SOFTWARE DEVELOPMENT ETC.

    • Implementation of C++ solution for embedded devices running Linux

    • Prototyping algorithmic solutions and testing feasibility of new approaches in a scripting language of choice (i.e. Python)

    • Thread scheduling, multithreading, parallelism, inter-thread communication

    • Bringing Azure IoT suite to the products if/once feasible

    • Linux shell scripting, for automation of maintenance tasks

    • Porting code and libraries across operating systems and architectures

    • Backend development: ability to effectively use/design APIs to interface with databases (SQL/MYSQL), developing logging, file management, and reporting tools

    • Test/Debugging/Prototyping development: create WPF C# apps to test, validate, visualize the performance and operation of the product

    Collaboration:

    • Ownership of hardware selection and design tasks and support in-house manufacturing engineers and technicians; comfortable collaborating with electrical and mechanical teams to accomplish rapid prototyping tasks

    • Working closely with electrical and mechanical teams throughout the product lifecycle to proactively identify and mitigate potential problems with product delivery at scale

    • Working with vendors to discover latest feasible technologies and test them for performance and usefulness for current and future products

    • Ability to present complex software features, new hardware proposals as compelling arguments for change/improvement to non-technical team members and management

    Specialization:

    • Working with high performance off-the-shelf (and derivative) platforms, particularly Nvidia Jetson product line. This includes flashing the OS, deploying correctly versioned libraries and writing make/cmake/docker files that build applications.

    • Experience working with LiDAR or other point cloud based technologies. Ability to perform usual point cloud tasks – clustering, geometric transformations, deriving cluster properties, object identification, etc.

    • Working with industrial cameras particularly through GigE and USB interface, sensor and optics selection, processing sensor data (debayering, pixel format conversions), basic image analysis and computer vision tasks

    • Experience working with convolutional neural networks interfacing with GPU through CUDA, especially inference optimization by leveraging latest technologies like TensorRT

    • Network optimization and organization; TCP/IP, UDP protocols; driver optimization (frame and buffer sizing, protocol features improvement), working with IT and infrastructure engineers to meet security requirements.

    • RF protocol development and optimization (XBee and WiFi)

    • Other welcome experience: industrial/robotic/manufacturing automation, harsh environment design, IoT

    Inclusivity:

    Vision IQ is proud to be an Equal Employment Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, gender (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender identity, gender expression, age, status as a protected veteran, status as an individual with a disability, or other applicable legally protected characteristics.