Epiroc is looking for a Software Engineer to build scalable systems using C# and .NET, focusing on concurrent programming, API development, and messaging protocols to support their innovative drill rigs, rock excavation, and construction tools.
Requirements
- 5 or more years of professional experience with C-Sharp and .NET development.
- Strong skills in concurrent, multi-threaded, and asynchronous programming (e.g., async/await).
- Experience developing highly scalable APIs and 3rd-party system integrations.
- Proficiency with MS Visual Studio for development and debugging.
- Hands-on experience with version control tools (e.g., Git) and code repositories like Bitbucket or GitHub.
- Familiarity with continuous integration build servers like TeamCity or Azure Devops.
- Solid understanding of messaging protocols (TCP, UDP, WebSockets, HTTP) and their applications.
Responsibilities
- Design and develop moderately complex features using C-Sharp and .NET Core/Framework, adhering to architectural guidelines.
- Implement concurrent, multi-threaded, and asynchronous programming techniques to optimize performance.
- Develop and maintain highly scalable APIs and 3rd-party system integrations.
- Utilize MS Visual Studio for coding, debugging, and performance profiling.
- Manage codebases using version control tools (e.g., Git, Mercurial) and repositories like Bitbucket or GitHub.
- Leverage continuous integration build servers like TeamCity or Azure Devops.
- Implement solutions leveraging messaging protocols (e.g., TCP, UDP, WebSockets, HTTP) for real-time systems.
Other
- The Software Engineer takes on more complex development tasks with moderate supervision.
- Conduct thorough code reviews and mentor Junior Software Engineers.
- Troubleshoot and resolve technical issues in production and development environments.
- Collaborate with product managers to refine requirements and propose solutions.
- Ability to work independently and collaborate effectively on a team.