Lead Software Engineer (C#) - Automation & Machine Control
- Hiring from
- Singapore
- Work type
- Hybrid
- Posted
620,970 remote jobs, straight from company career pages
100% free · New jobs every minute
Show job descriptionHide job description
ABOUT SIOUX
Sioux is a strategic high-tech solutions provider that develops, innovates and assembles complex high-tech systems
We have a team of over 1,200 dedicated engineers who either support our clients or serve as their Research and Development department. Our strong productivity allows us to speed up product development, giving our clients a competitive edge at a better cost-effectiveness.
As a rapidly growing employer, Sioux values its employees' growth and well-being. We invest in their career development and foster a positive work environment that promotes personal and professional growth.
SIOUX IN SINGAPORE
Sioux Singapore plays a pivotal role in the Asian market by offering R&D services from our centers across Europe and Asia to customers, leading development teams in Asia, from Singapore
This expansion allows us to meet the changing needs of our domestic and international (OEM) customers in the semiconductor, analytical, and medical industries.
This is a technical leadership role. You own how a team's software gets built - the specifications, the design, the quality standards and the flow of delivery - while remaining hands-on in the code. It is not a line-management position; people and career management sit with a separate coaching role.
Your job will comprise:
Own the end-to-end development process for multiple software modules or subsystems, from specification through design, implementation, integration and release
Design, implement and maintain high-performance C# software components for machine and subsystem control within complex systems.
Create technical designs and ensure design consistency is maintained throughout implementation
Prepare and agree software specifications with stakeholders, and manage requirements through to delivery
Act as the primary technical contact for your team across other teams and disciplines, and work with software architects on architectural direction
Establish and maintain the team's environment for configuration, integration and testing
Break technical content down into a work breakdown structure, track your sub-team's progress and intervene early to protect delivery
Set and uphold standards for code quality, testability and review across the team
Mentor and coach engineers, give constructive feedback, and raise the technical capability of the team
Drive continuous improvement of software processes, performance and tooling
Competences
Defines technical direction and justifies design decisions with clear, defensible reasoning
Communicates effectively across departments and delivers structured, impactful technical presentations
Builds alignment across teams and departments; promotes shared success over individual credit
Deep problem-solving and analytical thinking, including root-cause analysis across the software - hardware boundary
High sense of ownership and accountability; steps up and bridges the gap when one appears
Coaches others and acts as a technical reference for peers
Proactive mindset, always seeking innovation and enhancement of software tools and workflows
Requirements
8+ years of hands-on software engineering, with substantial depth in C# and the .NET ecosystem
A demonstrable track record of owning the technical delivery of a subsystem or product area end to end
Expert-level software design and modular decomposition — able to define module boundaries and defend them
Working knowledge of system architecture at product-family level, sufficient to hold architectural discussions with architects
Strong requirements engineering: writing, negotiating and managing requirements with stakeholders
Proficient with multi-threaded and asynchronous programming
Skilled in unit, integration and system testing, test-driven development, static code analysis and CI/CD pipelines
Experience with version control (Git) and modern DevOps practices
Experience leading code review and mentoring engineers
Experience working in a Kanban or comparable flow-based team
Affinity with hardware and physical systems, and experience integrating software with equipment and control systems, is a strong plus
How this differs from the Senior Software Engineer role
A Senior Software Engineer delivers modules and subsystems with minimal supervision. The Lead owns the process that produces them
The Lead prepares specifications with stakeholders and holds design consistency across the whole team's work — not only their own designs
The Lead is accountable for the team's technical planning and progress, not only for estimating their own activities
Both roles are hands-on. The Lead writes code; the difference is scope of ownership, not distance from it
WHAT WE CAN OFFER
Our employees are our strength and together we want to achieve the maximum. That is why we invest a lot in our employees, through generous development budgets and personal attention. According to our employees, this is what makes the difference at Sioux. We are proud of that. For us, success is more than just a good salary: it is also about feeling valued, getting responsibilities, and to be able continuously develop oneself.
No matter how experienced you are, you will continue to develop yourself on a personal level and in terms of content. You have a personal training budget of 5,000 SGD available for this, every year
Varied work due to the diversity in technologies, markets, and projects
An open culture that focuses on collaboration, learning, and having fun
An innovative work environment
Job Location
Our office is conveniently located next to the Tai Seng MRT station.
