Microservices Software Engineer

  • Alpharetta, GA
  • Posted 3 days ago | Updated 2 hours ago

Overview

Hybrid
Depends on Experience
Contract - Independent
Contract - W2
Contract - 6 Month(s)

Skills

DevOPS
Java
Restful API
API
SQL
NoSQL databases.

Job Details

Must Have:

  • LinkedIn with a picture
  • Experience with developing microservices
  • At least 5+ years experience designing and developing secure object-oriented web services.
  • Experience with all phases of software development. You have been there and done it, multiple times. You have strong experience in Java and Restful API Development. Also experience in spring boot is required.

JOB SUMMARY

The Software Engineer will help support and build the Modernized Microservices Applications Suite. Along with writing effective code, the position will be responsible for designing, building, delivering and maintaining a highly scalable set of products and applications. The incumbent will use industry best practices and work collaboratively with cross-functional team of product managers, architects, principal engineers, software engineers, test automation team and DevOPS engineers

How you will make an impact:

Design, develop, test and maintain microservices to support our consumer facing applications.

Write highest quality code with utmost attention to scalability, security and performance. Use TDD and participate in code-reviews with other software engineers.

Collaborate with DevOps team to setup the build and delivery pipeline. Add instrumentation and monitoring to support production environments. Build Docker containers and container management.

Accurately scope effort, identify risks and clearly communicate trade-offs with team members and other stakeholders.

Ship high quality products and features with an end-to-end mindset from conception to delivery and production support; owning specifications, quality, release deployments and monitoring of production health.

What we look for:

BS/MS in Computer Science or equivalent work experience.

5 - 7 years of experience designing and developing secure object-oriented web services.

Experience with all phases of software development. You have been there and done it, multiple times. You have strong experience in Java and Restful API Development. Also experience in spring boot is required.

Experience with developing microservice.

Some familiarity with exposing and securing APIs using an API management solution.

Experience with SQL and NoSQL databases.

Test Driven Development, unit testing, and knowledge of mocking frameworks such as EasyMock and Mockito.

Developing and deploying applications on AWS, Azure or private cloud.

Strong problem solving and communication skills. Great business acumen with a passion to solve for the customer.

Some experience in at least a few of the following technologies in the below categories:

Spring Framework; Spring Boot.

Web Services: Spring, Jersey, Apache CXF, RESTEasy, Restlet

Databases: Oracle, MySql, MongoDB, Cassandra etc.

Distributed Cache: Redis, Coherence, Hazelcast

Build & CI Tools: Maven, Jenkins, Gradle etc.

Search & AI: Apache Solr, ElasticSearch, Natural Language Processing libraries (Stanford, Apache).

Message Brokers: Apache Kafka, ActiveMQ, RabbitMQ

ESSENTIAL DUTIES

Performs as a key contributor to an engineering team that builds and supports exceptional products that provide innovative solutions to challenging business use cases, existing system and operational problems

Participates in architectural design, system analysis, and programming activities on application software; this may often require independent research and study

Develops high-quality and production-ready software by using best-practice data structures, algorithms, design patterns, and frameworks that are maintainable, scalable, responsive, and secure

Writes highest quality code with utmost attention to scalability, security and performance and with an end-to-end mindset from conception to delivery and production support, owning specifications, quality, release deployments and monitoring of production health.

Produces complete, simple, and readable technical documentation for everything developed and maintains a team culture of documenting everything

Tests and ensures quality of all code that developed in line with principles of test-driven development and continuous delivery, utilizing test automation frameworks wherever possible

Participates in code-reviews, provides technical guidance and mentors software engineers

Collaborates closely with Engineering leadership, Product Managers, Designers, Test Automation and other teams and business units to define, prioritize, sequence and scope business and functional requirements and drive results.

Instruments infrastructure and application performance monitoring, capacity management, alerting, tools instrumentation and metrics (KPI) management

Performs impact assessment of product (hardware, software) upgrades

Assists in planning, coordinating, and executing engineering projects

Supports and collaborates with other Engineers through evaluation, design analysis, and development phases

Maintains knowledge, ensures competency and compliance with policies and procedures, in order to be the technical expert while collaborating with cross-functional teams

This list is not all-inclusive and you are expected to perform other duties as requested or assigned

Knowledge, Skills, and Abilities

Ability to understand business plans and apply that information into the development of an IT business case

Anticipates problems, resistance or likely objections and takes action to resolve them

Ability to guide, train and mentor associate engineers

Highly skilled in developing quantitative cost/benefit analysis to measure improvements

Proficient in organizational processes as well as capable of assessing and initiating change of such processes

Demonstrates an in-depth knowledge and application of competency and can consult as well as lead others in its application

Strong communication (written and verbal) and presentation skills

Knowledge of agile development methodologies

Ability to develop and maintain key vendor relationships with a focus on technology currency and best practices

Life-long learner, process improver

Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.