{bc}
Company Site

Software Engineer

AMETEK
Bengaluru, IND
Mid
Onsite
Discovered Today
dartflutterhtml-cssjavascripttypescript

Full Job Posting

As a Software Engineer, you will design, develop, test, and maintain software applications that support industrial UPS and battery charging products. You will contribute throughout the software development lifecycle, from defining requirements and selecting technologies to implementation, deployment, and ongoing support. Projects may include developing new applications and features, improving user interfaces and device communications, and modernizing existing software for deployment across platforms such as Windows, iOS, and Android. Working with firmware engineers, hardware engineers, and product stakeholders, you will deliver reliable, maintainable software that meets user and product needs.

Key Responsibilities:

Software Design and Architecture:

  • Translate user and product requirements into software designs and implementation plans for new applications, feature enhancements, and improvements to existing software.
  • Evaluate development tools and frameworks; design modular, maintainable architecture that separates user interfaces, business logic, data access, and device communications and supports cross-platform deployment where appropriate

Application Development and Maintenance:

  • Develop new applications and features, maintain reusable software components, and enhance or modernize existing codebases, including cross-platform development for Windows, iOS, and Android as project needs require.
  • Develop responsive, intuitive user interfaces suited to desktop and touch-based devices, with attention to usability, accessibility, and performance.
  • Implement reliable data handling, application settings, error handling, and diagnostic logging; maintain compatibility with existing product interfaces where required.

Device Communications and Integration:

  • Develop and troubleshoot application interfaces to embedded products, coordinating communication protocols and data exchange with firmware developers.
  • Address platform-specific connectivity, permissions, and security requirements, including connection loss, recovery, and clear reporting of communication errors.

Collaboration and Documentation:

  • Work with firmware engineers, hardware engineers, and product stakeholders to define software requirements, prioritize features, and review implementation tradeoffs.
  • Document software requirements, architecture, interfaces, and build and deployment procedures; participate in code reviews and shared development practices.

Software Testing and Delivery:

  • Develop automated unit, integration, and regression tests to verify software functionality, reliability, and consistent behavior across supported platforms.
  • Troubleshoot application defects and performance issues; establish repeatable builds and support packaging, deployment, and release validation for each target platform.

Minimum Qualifications:

  • Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, or a related field.
  • Experience designing, developing, testing, and maintaining software applications, including implementing new features and supporting existing codebases.
  • Proficiency in an application development language such as C#, C++, Dart, or TypeScript, with a strong understanding of modular design, object-oriented programming, and asynchronous programming.
  • Understanding of software architecture, reusable components, user interface design, and the separation of application logic from platform-specific functionality.
  • Experience using version control systems, code reviews, automated testing, and software debugging tools in a collaborative development environment.
  • Strong analytical and troubleshooting skills, including the ability to understand unfamiliar code, resolve software issues, and translate user needs into clear software requirements.
  • Effective communication and collaboration skills.

Desired Qualifications:

  • Experience delivering applications on Windows, iOS, and Android, including platform-specific builds, signing, packaging, and distribution.
  • Hands-on experience with cross-platform frameworks such as .NET MAUI, Qt, or Flutter, and the ability to evaluate framework suitability for product requirements.
  • Experience planning legacy application migrations, managing technical debt, and maintaining functional compatibility through incremental delivery.
  • Familiarity with continuous integration and delivery (CI/CD), automated build pipelines, dependency management, and release automation.
  • Experience integrating applications with embedded or industrial equipment through network or serial communications.
  • Knowledge of web technologies (HTML, CSS, JavaScript), secure application development, and local data storage

Apply for this job in 1 click

Skip the repetitive application forms

Install the Base Career Chrome Extension and autofill job applications across major job boards with your profile.

Sarah M.James T.Maya R.

Trusted by over 500,000 job seekers on Base Career

Start Free Today

More from this employer

More jobs at AMETEK