Principal Software Engineer(embedded)

Year    Bangalore, Karnataka, India

Job Description


About HMEFor over 50 years, HME has created industry-leading products and services, their earliest being the first wireless microphone for the professional audio market in 1974. Since then, they have evolved greatly and pioneered into a variety of niche markets, setting new benchmarks with their work.HME believes that theres more to a person than whats written on their resume. HME sees their employees for who they are and value every idea and opinion xe2x80x94 its what fuels their innovative thinking and helps deliver market-leading products and services.At HME, it takes a group of talented individuals working together as one to emerge as a market leader. HME is home to individuals who love their work and do it with integrity, consistently demonstrating a passion for excellence, and ardently cultivating an innovation mindset.About HME:For over 50 years, HME has created industry-leading products and services, their earliest being the first wireless microphone for the professional audio market in 1974. Since then, they have evolved greatly and pioneered into a variety of niche markets, setting new benchmarks with their work.HME believes that theres more to a person than whats written on their resume. HME sees their employees for who they are and value every idea and opinion its what fuels their innovative thinking and helps deliver market-leading products and services. As a part of our team at HME GCC, you will help HME leverage cutting-edge cloud technologies, and empower multiple industries to thrive by enabling seamless connectivity and enhancing communication.Principal Software EngineerDesign and Development of Firmware and Software Applications:

  • Designs firmware intended for embedded systems and develop some PC applications.
  • Works independently and with fellow senior engineers on the development of new complex firmware/software projects.
  • Works independently on and completely designs, tests, documents, and helps guide firmware/software projects.
  • Leads design team meetings to provide input into overall software architecture of a project.
  • Provides project development effort and schedule estimates during project planning stages.
  • Designs software/firmware using high-level design and modeling tools, compilers, and low-level assemblers.
  • Provide evaluations of new software technologies to be applied to future HME products.
Documentation, Coding, Testing, and Review:
  • Participates in identifying and defining requirements and specifications for a given firmware/software project.
  • Documents and reviews overall architecture and individual objects (modules) for a given firmware/software project.
  • Defines and performs both unit and system tests on components and objects of a given firmware/software project.
  • Uses test tools such as debuggers, emulators, and test plans to unit and system test software applications to debug and validate them.
Sustaining Engineering Support:
  • Supports Sustaining Engineering in solving design errors and/or modifications of existing released products.
  • Investigates customer problems as requested by Sales, Marketing, or Service.
  • Corrects and documents software as necessary to fix problems with released software applications.
  • Becomes thoroughly acquainted with current as well as future HME projects.
  • Provides leadership and advice to more junior software engineers regarding design and development of other projects.
  • Performs all other job responsibilities as assigned.
Education:
  • Bachelor's Degree Required
Experience:
  • 10+ years of experience and excellence at writing embedded C++ applications running on Linux, RTOS and bare-metal.
  • 5+ years of technical experience in leading software development for embedded systems
Required Qualifications:
  • Expertise with system-level architectures for embedded SW/HW design
  • Expertise with full software lifecycle: specification, design, implementation, integration, debug and maintenance is required
  • Thorough understanding of the Linux OS and kernel, specifically for embedded devices. Experience with bash scripting.
  • Experience with containerization (Docker, Kube)
  • Experience with DSP, ARM processors and fully-featured microcontrollers
  • Experience with common peripheral protocols (SPI, UART, I2C, etc.)
  • Experience with Linux kernel/driver development for multi-processor heterogeneous systems
  • Familiarity with SQL database development and maintenance
  • Experience with industry standard networking and data communication protocols (TCP, UDP, RTSP, web services, SOAP/REST, websockets)
  • Familiarity with VoIP technology and SIP/RTP protocol
  • Familiarity developing software to validate software/hardware systems (board bringup)
  • Proficient in debugging software on either PC host platforms or embedded hardware using debuggers, emulators, etc.
  • Experienced with object-oriented analysis and design, and familiar with structured, functional decomposition design methodologies
  • Solid understanding and experience in design patterns, data structures and advanced programming techniques.
  • Proficient in communication and writing skills with the ability to design in a group setting.
  • Preferred Qualifications
  • Familiarity with streaming audio over the network using Gstreamer
  • Experience with Bluetooth Low Energy (both central as well as peripheral devices with custom profiles)
  • Understanding of full stack web applications development (using node.js)
  • Familiarity with additional programming languages node.js, react.js python, java, C#
  • Mobile applications development experience (Android)
  • Experience with the Yocto Project
  • Experienced using IDEs such as Eclipse and VS Code
  • Working knowledge of continuous integration to include Git, Agile and/or Kanban
  • Proficiency with GitHub

HME

Beware of fraud agents! do not pay money to get a job

MNCJobsIndia.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD3672076
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Bangalore, Karnataka, India
  • Education
    Not mentioned
  • Experience
    Year