Senior Software Engineer - C# .Net

Canada
Product Delivery – Product Delivery /
Full-time /
Remote
We are 3PILLAR GLOBAL
 
We build breakthrough software products that power digital businesses. We are an innovative product development partner whose solutions drive rapid revenue, market share, and customer growth for industry leaders in Software and SaaS, Media and Publishing, Information Services, and Retail.
 
Our key differentiator is our Product Mindset. Our development teams focus on building for outcomes and all of our team members around the globe are trained on the Product Mindset’s core values – Minimize Time to Value, Solve For Need, and Excel at Change. Our teams apply this mindset to build digital products that are customer-facing and revenue-generating. Our business-minded approach to agile development ensures that we align to client goals from the earliest conceptual stages through market launch and beyond.

Responsibilities

    • Actively contribute in agile project teams during scrums, sprint planning, code reviews
    • Develop, maintain, and integrate software systems and applications.
    • Craft client code that is not just efficient, but also performant, testable, scalable, secure, and of the highest quality.
    • Apply object oriented programming concepts and design patterns. 
    • Write automated unit tests 
    • Participate in story refinement and sprint planning More senior candidates will have demonstrated the ability to design complex data models and REST APIs, evaluate and compare solution options, and have technical leadership skills.
    • Articulate technical issues to peers, architects and project managers while recommending creative solutions
    • Ensure application quality and guard against regressions by maintaining test suites covering the breadth of system features
    • Client facing experience and strong communication skills
    • Actively participate in accurate planning and estimation efforts, utilizing project methods and tools
    • Promote client success across the team by collaborating with engineers, designers, and managers to understand user pain points, anticipate potential problems, and iterate on solutions that drive client success.
    • Actively participate in the Engineering Practice community, mentoring others through Communities of Practice (CoPs) or on project teams, and supporting the growth of technical capabilities.
    • Independently drive project delivery within defined architecture, demonstrating autonomy and accountability in all stages from conceptualization to deployment.

Requirements

    • A minimum of 7+ years of experience/expertise in the following areas specified below:
    • Senior level software development experience using C#.NET and ASP.Net Core, ORM Dapper
    • Experience building REST APIs with .Net Core
    • Experience building SPAs with ReactJS
    • Front-end technologies: ReactJS, w/Redux, TypeScript, HTML, CSSSQL and Ms SQL Server
    • Nice to have Azure Cloud, Blob Storage, DevOps
    • Experience in Agile software development methodologies.
    • Expertise in applying Object-Oriented Programming principles (abstraction, encapsulation).Experience in creating and implementing well-tested, scalable, and performant enterprise-level systems.
    • Practice and initiative mentoring other engineers and decision-makers throughout the organization.
    • Good understanding of SOLID principles.
    • Familiarity with OWASP.
    • Client facing experience and strong communication skills.

Nice to have

    • Object-Relational Mappers (ORMs)
    • Architectural (Microservices, Serverless etc) and Design (Factory, Singleton, Observer etc) Patterns
    • Working with Cloud technologies (Azure, AWS)
    • Containers using Docker/Kubernetes