Job Summary
Looking for a self-motivated individual that is looking to develop their development skills as a Senior Developer within our AssetWorks GPS/Telematics division. As a Senior .NET Developer, you will play a key role in designing, developing, and maintaining scalable and high-performance applications using the .NET framework. You will collaborate closely with cross-functional teams to build robust software solutions, troubleshoot complex issues, and mentor junior developers.
Job Description
Lead the design and development of complex, high-performance .NET applications, ensuring high availability, performance, and scalability.
Write clean, maintainable, and efficient code using C# and the .NET ecosystem (.Net Framework 4.8, ASP.NET Core 2.2.1, .NET 6+).
Design, implement, and maintain robust REST API services for internal and external consumption.
Work closely with Product Management and UX/UI designers to understand business requirements and translate them into technical specifications and delivered solutions.
Conduct code reviews and mentor junior developers to ensure high-quality code, adherence to coding standards, and continuous technical growth across the team.
Identify and resolve performance bottlenecks, bugs, and other technical challenges within a distributed system architecture.
Continuously improve development processes, including establishing and refining CI/CD pipelines, and ensure timely delivery of software releases.
Stay up to date with emerging trends in software development, .NET technologies, cloud platforms (e.g., Azure/AWS), and best practices.
Coordinate with professional services and/or customer care as needed, to support questions related to functionality within realm of responsibility.
Contribute to the overall system architecture, roadmaps, and technical debt management strategies.
Requirements
- Bachelor’s degree from an accredited college or university or a certificate from a technical training institute.
- 7+ years of progressive experience in software development, with 5+ years of direct experience in .NET development, demonstrating expertise in C# and ASP.NET Core.
- Strong understanding of object-oriented programming (OOP), design patterns (e.g., MVC, MVVM), and software design principles.
- Expertise with web development frameworks including building and securing Web API and RESTful services.
- Hands-on experience with modern front-end frameworks, specifically Angular (v15+) framework.
- In-depth knowledge of SQL relational databases (e.g., SQL Server, PostgreSQL) and ORM frameworks (Entity Framework). Ability to write and optimize complex queries and stored procedures.
- Experience with version control tools (GitHub) and managing branching strategies (e.g., Gitflow).
- Experience with testing frameworks (Microsoft.VisualStudio.TestTools, xUnit/NUnit) and a strong commitment to test-driven development (TDD).
- Proven ability to diagnose and resolve complex technical issues in a production environment.
- Excellent communication, technical documentation, and cross-functional collaboration skills.
- Experience with Interprocess communication technologies (e.g., SignalR, message queues).
Preferred Qualifications
- Familiarity with Agile/Scrum methodologies and experience working in short development sprints.
- Vehicle fleet operations experience (bonus).
- Familiarity with ArcGIS API’s, and practical experience implementing and maintaining robust CI/CD Pipelines (e.g., Azure DevOps, Jenkins, GitLab CI).
- Knowledge of Microservices architecture, containerization technologies (Docker, Kubernetes), and development within a service-oriented architecture (SOA).
- Direct experience with a major cloud provider (Azure or AWS) for deployment and monitoring.
- Access to a vehicle.
Day to Day Tasks
- Mentor and Inspire: Provide guidance to junior developers through thoughtful code reviews and hands-on technical coaching.
- Share Expertise: Contribute to team growth by creating documentation, leading workshops, and fostering knowledge-sharing sessions.
- Own Your Work: Take initiative by self-assigning tasks from pre-planned sprints and delivering clean, high-quality code.
- Solve Complex Problems: Perform root cause analysis and implement effective solutions for challenging technical issues.
- Architect for Scale: Design and build robust, scalable systems while driving architectural improvements.
- Champion Performance: Optimize applications for speed, reliability, and maintainability, ensuring best practices and coding standards.
- Collaborate Across Teams: Engage in backlog grooming, sprint planning, and work closely with QA and Product Owners to deliver seamless solutions.
- Drive Innovation: Propose implementation strategies and evaluate emerging tools and technologies to keep our stack cutting-edge.
- Plan for Success: Assess risks and provide technical insights that shape roadmap decisions.
- Ensure Reliability: Support production environments, troubleshoot incidents, and maintain system stability.
- Promote Observability: Implement monitoring and alerting solutions to proactively safeguard system health.
Worker Type
Regular
Number of Openings Available
1