Sr Software Engineer (Remote)
Be part of a fast moving, lean product development team working on the continued development of the Lone Wolf family of applications. Deliver reliable, scalable new features using .NET Framework, .NET Core, AngularJs, TypeScript, Microsoft SQL and other modern technologies. Collaborate with the Engineering and Product teams to design and deliver finished, high-quality, and compelling features and products on time and on budget.
THIS MAY BE YOUR DREAM JOB IF…
- You take pride in your reputation for designing simple, elegant solutions to address various needs.
- You consider yourself to be a fast learner; you are driven to improve your knowledge of software architecture and to keep up with new technologies and best practices.
- You enjoy challenging yourself to meet goals at a sustainable pace.
- Your friends and colleagues describe you as engaging, a strong communicator who is eager to bring teammates together to figure things out.
- You strive for high-quality, rapid output through the use of Agile software development best practices and want to work alongside like-minded teammates.
- You are self-motivated and want to work in a small team, yet you are comfortable partnering with other departments, stakeholders, and customers on software development, improvements, internal tools, and implementation issues.
Skills & Requirements
- 5-8 years of .NET development experience
Completion of a post-secondary program in Computer Science or a related discipline
Expertise with the .NET Framework, .NET Core, AngularJs, TypeScript and OOP design patterns and (distributed) version control (such as Subversion or git)
Background in high-growth Agile SaaS-based engineering organizations
Thorough understanding of the DRY, SOLID and KISS principles of software development and understanding of basic project management principles
Experience with Amazon Web Services or Microsoft Azure is a plus
AS SOFTWARE ENGINEER YOU WILL BE ASKED TO:
- Collaborate with a team of full stack developers to design, develop, test, and support new features.
- Identify technical requirements and participate in peer reviews of solution design and related code.
- Proactively learn product frameworks and code base; continually improve upon existing applications and learn new technologies.
- Justify decisions made within the code being delivered and take ownership of any output.
- Participate in performance tuning, testing, refactoring, usability, and automation; support, maintain, and help document software functionality.
- Maintain coding, compliance, and security standards.
- Provide maintenance and on-going support of past and future technical solutions.