Mid-Level Software Engineer - Platform (Fully Remote Available)/MT

  • Foundant Technologies
  • Nov 18, 2021
Full time Engineering Software

Job Description

Foundant is hiring for a Software Engineer opportunity with a focus on skills and experience in building out modern, distributed, modular systems in a cloud native environment.  This position will be working on our Platform team to build out a microservices architecture to satisfy the needs of the business for our client-facing and internal systems.  

 The successful candidate will have at least 6 years of software engineering experience working on incrementally more difficult problems over that time, ranging from simple bug fixes to complex logic and design problems.  We are looking for an exceptionally strong team player that understands the dynamics of building enterprise class software solutions in a decoupled but cohesive environment.  The provided solutions must be resilient, self-healing, extensible, scalable and can stand the test of time as Foundant grows over the next 5-10 years.

 You will be building solutions ranging from simple services to complex domain-driven contexts in a cloud native/DevOps environment using atomic, scalable and high quality microservices.  A “nice-to-have” set of experiences would include having migrated legacy systems to a new architecture over time and the complexities that this endeavor entails.

 As part of our engineering team, you will be responsible for enhancing and maintaining the functionality of Foundant’s products, ensuring coding standards and best practices are followed, and contributing to our efforts to improve internal processes. You will work with our product team to understand new functionality requirements and priorities and will also work with our architect and Director of Engineering to understand current and planned architectural and strategic product direction.

Experience Areas (the more of these you have, or can speak to, the better) :

  • Development experience in one or more of the following languages:
    1. Golang
    2. Python
    3. .NET Core (C#)
  • SOLID Principles
  • Working knowledge of SQL and No-SQL persistence approaches
  • Working knowledge of microservices development and relevant technologies such as orchestration, service discovery, service gateways and proxying in a cloud native environment
  • Building distributed systems
  • Containerization and orchestration technologies such as Docker and Kubernetes 
  • DevOps culture and its importance in building distributed systems 
  • Microservice solutions 
  • Building and enhancing service API’s
  • Using an Enterprise Service Bus to solve problems
  • Working in a Lean-Agile Engineering environment 
  • Strong Test-Driven Development (TDD)
  • Behavior-Driven Development (BDD)
  • Strong iterative delivery experience in an agile environment
  • Analyzing, diagnosing, proposing and implementing solutions to user problems
  • Microservice application development experience 
  • Cloud Native delivery with one or more public cloud provider (AWS, Azure, GCP)
  • CI/CD delivery
  • Infrastructure as Code (TerraForm/CloudFormation)
  • Working with a Product Organization to design solutions


Required Knowledge, Skills and Abilities:

  • Strong interpersonal skills
  • Ability to communicate clearly and concisely, both orally and in writing 
  • Ability to facilitate resolution of issues across teams (inside and outside of Engineering)