
Sr. Software Engineer
- Bangalore, Karnataka
- Permanent
- Full-time
- Design, develop, and maintain high-performance software applications for industrial equipment in mining, drilling, and construction domains.
- Build scalable and responsive user interfaces tailored for embedded and real-time systems.
- Contribute to automation efforts, including the development and execution of software tests to ensure code reliability and system integrity.
- Optimize software solutions for efficiency, responsiveness, and maintainability, meeting both technical and performance standards.
- Write clean, modular, and well-documented code that supports long-term scalability and ease of maintenance.
- Collaborate with cross-functional teams including product management, system engineering, and quality assurance to deliver well-integrated features.
- Participate in and lead code reviews, design discussions, and software planning sessions to uphold development best practices.
- Troubleshoot and debug existing systems, providing timely resolutions and continuous improvements to enhance system reliability.
- Perform system-level validation and testing, ensuring compliance with performance, functionality, and safety requirements.
- Stay current with advancements in software development methodologies, tools, and industry standards relevant to automation and control systems.
- Bachelor's or master's degree in relevant engineering fields (e.g., Electronics, Mechatronics, Robotics, Computer Science) with 5 to 8 years of professional experience.
- Strong proficiency in C++ programming (C++11 or C++14) with a focus on Object-Oriented Programming (OOP) in Linux environments.
- Expertise in Qt GUI development and familiarity with PyQt is considered a valuable advantage.
- Proficiency in Python for scripting, automation, and testing is essential.
- Experience with MQTT communication protocols and tools like MQTT Explorer is highly desirable for monitoring and debugging message exchanges in distributed systems.
- Integrate with REST and FastAPI services and implement modern front-end interfaces.
- Excellent analytical and problem-solving abilities, capable of identifying complex issues and devising effective solutions.
- Extensive experience in data structures, design patterns, and multithreading.
- Solid understanding of embedded Linux, RTOS, and shell scripting.
- Strong communication skills with the ability to articulate technical challenges and solutions to cross-functional teams, clients, and stakeholders.
- Hands-on experience with Agile methodologies (Scrum/Kanban), including sprint planning, standups, and retrospectives. Demonstrated ability to work effectively in a collaborative, team-based environment.
- Familiarity with communication protocols like CAN, J1939, LIN, and Ethernet. Knowledge of Linux Debian Operating systems and related concepts.
- Experience using Git for version control, CI/CD practices, and tools within the Azure DevOps ecosystem. Familiarity with automated deployment pipelines and versioning best practices.
- Excellent customer-facing skills with a proactive approach, capable of understanding client needs and delivering customized solutions
- Previous experience in heavy machinery in mining, construction, or automotive control systems
- Self-starter with curiosity to learn and an exploratory mindset
- Experience with Docker containers
- Nice to have the exposure in web technologies like ReactJS
- Strong problem-solving skills and attention to detail.
- Excellent communication and teamwork skills.
- Agile certifications such as Scrum Master or product owner
- Enthusiastic, positive minded and able to work well in an international client environment
- Good interpersonal, communication and analytical skills
- Team player - open-minded and flexible
- Competitive Salary and Benefits: Enjoy a rewarding compensation package tailored to your expertise.
- Innovative Projects: Work on cutting-edge advancements with a talented team.
- Professional Growth: Access continuous learning and career progression opportunities.
- Flexible Work Environment: Benefit from a supportive setting that promotes work-life balance.
- Inclusive Culture: Embrace diverse perspectives and inclusivity in the workplace.