Full Stack .NET/React Developer

Nearly all solutions we deliver consist of a .NET (C#) back-end, and a React/TypeScript front-end UI. In order to deliver a UI with which users can quickly explore and act on information, highly performant back-end services are essential.

As a Full Stack Developer at Interface 48, you will apply various software patterns to implement robust and scalable back-end systems that are as simple as possible, but no simpler. Ideally, you will also have experience implementing distributed back-end systems using an actor model. You will also use modern web technologies to implement web-based, front-end UIs that integrate with back-end systems in the most effective way possible. You will have general knowledge of key software concepts such as: authentication, authorization, caching, and client-side state management.

You will pay particular attention to domain design in order to ensure business logic is optimally encapsulated, thereby facilitating the implementation of query and command handlers. You will exercise sound judgement when designing front-end features to ensure a high-calibre UX, and have a keen eye for the details that matter most. You take pride in writing code that is clean, clear and concise — the type of code you'd want to come back to in a year's time when functionality is extended. You are capable of solving problems on your own, but also enjoy collaborating with others to find innovative solutions to unique problems.

Essential

  Core

  • At least two years of professional experience with Full Stack .NET/React web application design & development,
  • Strong communication skills, both verbal and written,
  • Organized self-starter that can go it alone, and works well in a team,
  • Excellent critical thinking and problem-solving abilities,
  • Versatile, flexible and responsive to changing priorities,
  • Innate curiosity for new software technologies and how they can be applied to your work.

  Design

  • Business Analysis, specifically in terms of Requirements Gathering,
  • Document requirements in the form of User Stories,
  • Describe proposed UI designs as low-fidelity mock-ups,
  • Possess a knack for consistent and intuitive UX design.

  Development

  • Develop back-end software systems by applying DDD together with CQRS and Mediator patterns, using .NET (C#):

    • Use DI built into the .NET Framework, or third-party DI solutions such as Autofac when more control required,
    • Use ORM libraries including EF Core and Dapper to interface with relational databases, most notably, Microsoft SQL Server,
    • Ability to read and write raw SQL queries/commands.
    • Implement Worker Services (e.g. Windows Services) in which to host long-running back-end services,
    • Integrate cloud computing services and other third-party external APIs,
    • Experience with NuGet package management, and basic PowerShell scripting.
  • Develop web applications using React:

    • JavaScript proficiency, including knowledge of modern features such as the spread operator, rest parameters, Promises and async/await functions,
    • TypeScript to ensure codebase type safety,
    • Integrate REST- and RPC-based HTTP APIs within JavaScript applications,
    • Apply Flux architecture, and specifically Redux for client-side state management,
    • CSS3 and JSS for styling components,
    • Competent with build tooling that involves NPM/Yarn and Node.js.

Extra Credit

  Core

  • Bachelor's Degree in Computer Science, Engineering, or similar.

  Design

  • Interview individuals to assess their needs, and help lead workshops to gather requirements,
  • Write Options Evaluation and other Technical Reports,
  • Develop User Acceptance Tests that help ensure application requirements are met.

  Development

  • Manage development tasks using Azure DevOps,
  • Experience with VS Code and Visual Studio,
  • Familiar with Jenkins CI/CD Pipelines,
  • Knowledge of Akka.NET and how it may be used to develop a distributed software system based on an actor model.
  • Knowledge of Material Design and associated design patterns.

Sound like a good fit?

If you found yourself nodding your head while reading through the above, please send through a Resume with Cover Letter to careers@interface48.com with "Re: Full Stack .NET/React Developer Opening" in the subject line.

We look forward to hearing from you!