Solve business problems through innovation and engineering practices.
Requirements
Designing and developing highly scalable services using Java, J2EE, Spring, Spring Boot, and Python
Using RESTful APIs and web services that can communicate with graph and elastic data sources
Real time data processing using messaging services Apache Kafka, and Apache Zookeeper
Developing and maintaining architectural documentation, including system configurations, design patterns, system integration, deployment and operational procedures
Designing, developing, and maintaining automated test scripts using modern tools including Karate, Selenium, JUnit, and Cucumber
Performing Functional, Performance, Regression, System Integration Testing, Unit Testing, and User Acceptance Testing to ensure the quality of applications
Utilizing front end frameworks such as HTML, Javascript, React, Angular, and NodeJS
Performing database design, data modeling, and operations using database management systems including SQL and NoSQL
Using containerization technologies such as Docker, and orchestration tools including Kubernetes and terraform for cloud native deployments
Using cloud platforms such as AWS or Azure
Monitoring and observability tools such as Dynatrace, Kibana, and Splunk
Utilizing version control systems, such as Git, and Bitbucket
Responsibilities
Design, develop and implement software solutions.
Involved in all aspects of the Software Development Lifecycle (SDLC) including analyzing requirements, incorporating architectural standards into application design specifications, documenting application specifications, translating technical requirements into programmed application modules, and developing or enhancing software application modules.
Identify or troubleshoot application code-related issues.
Take active role in code reviews to ensure solutions are aligned to pre-defined architectural specifications.
Assist with design reviews by recommending ways to incorporate requirements into designs and information or data flows.
Participate in project planning sessions with project managers, business analysts, and team members to analyze business requirements and outline proposed solutions.
Other
Master's degree in Applied Computer Science, Computer Science, Computer Engineering, Computer Information Systems, or in a related field of study plus five (5) years of experience in the job offered or as Software Engineer, Software Developer, IT Consultant, or in a related occupation.
The employer will alternatively accept a Bachelor's degree in Applied Computer Science, Computer Science, Computer Engineering, Computer Information Systems, or in a related field of study plus seven (7) years of experience in the job offered or as Software Engineer, Software Developer, IT Consultant, or in a related occupation.