We are looking for REAL people who share our passion for developing REAL AI solutions to solve REAL problems.
We are excited you are interested in joining evolve24 in its mission of advancing our federal and commercial clients’ unique goals and strategic objectives. We have a fast-paced, dynamic, and high-tech data science environment with a great work culture.
We offer competitive salaries, excellent benefits, and hybrid work schedules. We also recognize and reward our top performers, while investing in developing all talent by providing training and career pathing. As a small, but growing, company we believe the contributions of all team members are vital to our success.
Job Title: Principal/Staff Software Engineer
Job Location: Remote
preference to those in driving distance to St. Louis, MO or Herndon, VA*
Description
Staff Engineer needed for data science oriented solutions in a microservice, event message driven environment and web APIs. Position requires focus on architecture and platform engineering principles as well as hands on development.
Requirements
8+ years of industry experience
Work well in a DevOps, multifunctional teams
Take active part in design/architecture and implementation of software
Mentor team members
Experience engineering solutions using microservices
Experience in microservice architecture and related issues
Experience in API architecture and design
gRPC (preferred)
HTTP/REST/JSON
Experience with container based services: Docker, Kubernetes and Helm
Full understanding of SOLID principles
Experience in unit testing and TDD
Experience with CI/CD
Strong understanding common design patterns
Able to develop in “no framework” or “micro-framework” environments
Experience with 3 or more languages:
Java (preferred)
Python (preferred)
Go
C#
Typescript
Rust
PHP
etc..
Experience with distributed event streaming
Pub/Sub (preferred)
Kafka
Pulsar
etc..
Experience with databases, datastores and indexes
BigQuery (preferred)
MySQL
PgSQL
BigTable
Redis
Solr
Elasticsearch
etc..
Analyze the needs of the user and/or data scientist
Design, test and develop the software to meet those needs
Recommend upgrades for existing systems and programs
Develop separate elements of a software that work well in the system as a whole
Create various diagrams, flowcharts and models that illustrate the type of code needed
Ensure continued functionality of the system during maintenance and testing
Document each aspect of a system as a reference for future upgrades and maintenance
Revisit the development process to fix bugs or address issues