What are the responsibilities and job description for the Sr. Software Engineer (C# / Industrial Automation) position at Technosoft Engineering?
We are looking for a senior (10 Years), highly independent C# engineer with strong experience in
autonomous drilling systems, preferably DrillWise or similar mining solutions. The candidate
should be capable of owning features end-to-end—from architecture and design to
implementation and deployment.
Key Responsibilities
1. Architecture & System Design
- Design and own software architecture for desktop-based mining applications
- Define scalable and maintainable application structure (UI, backend, services, database)
- Make architecture decisions considering machine connectivity, performance, reliability, and safety
- Ensure alignment between software architecture and embedded / control systems
2. Application Development (Full Stack)
- Develop C# / WPF desktop applications using MVVM and best practices
- Work across UI, backend logic, and database integration
- Implement robust machine communication layers for drill connectivity
- Handle real-time or near real-time data from drill machines
3. Backend Systems & Integration
- Design and develop backend components, services, and APIs
- Manage data persistence, logging, diagnostics, and system monitoring
- Integrate PLC, HMI, embedded controllers, and CODESYS-based systems
4. Code Quality & Standards
- Perform code reviews and guide developers on best practices
- Define and enforce programming standards and design patterns
- Ensure clean, testable, and maintainable code
- Identify and address technical debt
5. Team & Technical Leadership
- Act as technical lead and mentor
- Support team handling and task planning
- Collaborate with embedded, controls, and field engineers
6. Independent Ownership & Self Implementation
- Work independently without constant guidance
- Proactively propose technical solutions
- Take accountability for delivery and system stability
7. Required Skills & Experience
- 10 years of strong hands-on software development experience
- Strong expertise in Microsoft technologies: C#, .NET, WPF, XAML
- Experience in software architecture and backend systems
- Understanding of embedded systems, HMI, PLCs, and CODESYS
- Experience in mining or industrial automation environments