Job Description Overview

Our client, a leading provider in utility management platforms, is seeking a Senior Software Engineer to join their dynamic team. Specializing in optimizing cash flow and conserving resources for real estate owners and managers, our client is committed to continuous improvement and innovation. As a Senior Software Engineer, you will play a crucial role in developing and enhancing our software-enabled solutions, contributing to a collaborative and agile environment.

Responsibilities

As a Senior Software Engineer, you will:

  • Develop medium to large-scale websites, console applications, and RESTful APIs utilizing the Microsoft stack with C# and JavaScript.
  • Collaborate within an agile project team comprising Developers, Technical Leads, Project Managers, and Strategists to understand client requirements, estimate work, develop new solutions, and improve existing ones.
  • Build and maintain internal tools to streamline development processes, proactively address issues, and boost productivity.
  • Uphold and contribute to development and coding best practices.
  • Define project scope, estimate timelines, and coordinate with other teams or stakeholders.
  • Conduct thorough code reviews to ensure quality, adherence to coding standards, performance optimization, and security considerations.
  • Collaborate with the quality assurance team to ensure comprehensive testing and address any identified issues.
  • Package and deploy software to integration environments such as Microsoft Azure and Jenkins.

Requirements

As a Senior (full-stack) Software Engineer, you should possess:

  • Strong experience developing websites, libraries, console applications, and RESTful APIs in a microservice architecture using .NET with C# and JavaScript.
  • Proficiency in contributing to agile project teams, understanding client requirements, estimating work, and enhancing solutions.
  • Ability to build and maintain internal tools to optimize development processes and productivity.
  • Solid understanding and practice of development and coding best practices.
  • Proven experience in code reviews, deployment, and software packaging.
  • Leadership capabilities, including mentoring junior developers and leading development initiatives.
  • 7+ years of experience in application and RESTful API development using C#, JavaScript/Typescript.
  • 7+ years of experience with modern software design patterns, debugging, and refactoring.
  • 5+ years of experience with React (Next.js preferred).
  • 3+ years of leadership experience.
  • Proficiency in managing complex states in web applications and working with libraries such as JoTai or Redux.
  • Experience with scalable, RESTful, and/or messaging pub-sub microservice application architectures.
  • Proficiency with MS SQL and Postgres database development.
  • Experience with Docker containerization and Microsoft Visual Studio tooling.
  • Familiarity with GIT code versioning, continuous integration, and automated build products like Jenkins, GitHub Actions, or Azure DevOps.
  • Familiarity with Tailwind CSS and cloud development platforms like Microsoft Azure or Amazon Web Services.

A Plus to Have

  • Experience working in an agency environment with multiple clients.
  • Familiarity with Storybook component library documentation.
  • Experience with Flurl HTTP client library or similar technology.
  • Experience with Dapper database ORM or similar technology.
  • Experience with ArangoDB, DataDog, and/or Kibana logging.
  • Experience with Rules Engine software and Keycloak identity and access management.
  • Strong testing and quality assurance experience.
  • Excellent verbal and written communication skills with the ability to interface directly with clients.
  • Ability to thrive in both independent and team environments.

Education & Experience

  • Bachelor's degree in Software Engineering, Computer Science, Information Systems, or a closely related field.
  • 7+ years of industry experience.