Software Developer - Cloud
Farmington Hills, MI
12+ Months
The Software Developer for cloud designs, builds, configures and tests cloud platforms, solutions and
integrations. on-premesis cloud and public cloud with Microsoft Azure
based on IT and business requirements.
This position requires a proactive mindset, technical background,
and End User analysis skills to develop/support solutions(s) within the IT department.
Hands-on experience
with designing, developing and building medium to large-scale solutions.
Flexibility and ability to adapt to a
variety of responsibilities and settings, self drive and motivation to continuously learn and apply new
technologies and solutions are key success factors.
This position requires hands-on experience with key
cloud technologies like Kubernetes, docker containers, infratstructure automation and configuration tools
like Chef, puppet, powershell, python, logging and monitoring tools, docker registry, Gitlab or Github code
repository, DevOps tools and supporting processes and documentation relevant to maintenance of
solutions.
IT experience in designing prototypes, proof of concepts and building reference models.
As a software develope for cloud, configure the Kubernetes clusters and develop scripts to
deploy docker containers using integration with DevOps tools.
Understand the functional
aspects, processes, inbound and outbound interfaces, load balancing requirements and
database requirements to onboard the projects in Container as a service environment.
Strong
understanding of Kubernetes master configuration to ensure zero downtime and failover of
production workloads.
This profile will leverage all available skills to enhance and strengthen
our infrastructure provisioning to support application development capabilities and create
solutions that are robust, scalable and secure. (40%)
Capacity management and proactive recommendations to the customer to increase capacity
as needed. Work with end users and other IT collegues to develop infrastructure change
system requirements; Keep up with the pace of change in cloud space in terms of technology.
Support platform upgrades conducted by central team. Work with Security to ensure
development of secure and robust solutions. (30%)
Plan/Communicate:
Assist as necessary in developing project plans and schedules; Track
progress to plans; Communicate status, issues and risks to supervisor, colleagues and
stakeholders on a timely basis. Provide Operational support and collaborate with managed
service provider to resolve production issues.
Task 3 Time Percent (20%)
Develop strong and productive relationships with business partners, colleagues and
management. Collaborate with DFS colleagues in other regions for building scalable solutions. (10%)
Work with end users and architects to understand and implement new requirements; Work in an agile
team environment to develop, test and deploy software, platforms and changes using agile
methodologies, concepts and framework such as Scrum and Kanban; Develop high performance,
scalable solutions, front end to backend services, integration of solutions; Proficient in deploying,
configuring and managing kubernetes based docker containers, Microservices concepts, familiarity with
cloud deployment patterns IaaS, PaaS, CaaS, knowledge of infrastructure automation and configuration
with chef, puppet, python, powershell, ansible technologies. Experience in the integration with backend
systems through Apigee/ ESB, and IAM tools like OpenID/ SAML for user authentication, configuration
and use of logging and monitoring tools like ELK stack and Grafana, Knowledge of database access
patterns and JDBC; Familiarity with Restful APIs; Development experience in cloud environment using
springboot, Java. Provide operational support when necessary; Experience in analytical, problem
solving, troubleshooting, performance tuning and conducting root cause analysis.
Good verbal and written communication skills Presentation skills Performance
Skills/Individual Competencies: 1. Dedication and high motivation 2. Focus on end user needs
3. Understands processes well 4. Demonstrate and support top performance 5. Create and
demonstrate accountability and credibility 6. Timely escalation 7. Regular communication 8.
Team work in a agile environment 9. Ability to follow processes and guidelines. 10. Technical
knowledge. Must be passionate about technology, quick learner, excited about learning and
embracing new technologies as needed.