DESCRIPTION:
Duties: Design, develop and implement software solutions. Solve business problems through innovation and engineering practices. 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.
QUALIFICATIONS:
Minimum education and experience required: Bachelor's degree in Computer Information Systems, Computer Engineering, Computer Science, or in a related field of study plus seven (7) years of experience in the job offered or as Software Engineer, Software Developer, Technical - Network Services, or in a related occupation. The employer will alternatively accept a Master's degree in Computer Information Systems, Computer Engineering, Computer Science, or in a related field of study plus five (5) years of experience in the job offered or as Software Engineer, Software Developer, Technical - Network Services, or in a related occupation.
Skills Required: This position requires three (3) years of experience with the following: Using object-oriented programing principles for Python, Java or Golang; Using software design patterns in Python, Java or Golang; and Using and implementation of data structures and algorithms in Python, Java, or Golang. This position requires two (2) years of experience with the following: Using web frameworks such as Django, FastAPI or Flask to build web applications and APIs having advanced features; Creating reusable Terraform modules; and Developing and automating software and infrastructure deployment using CI/CD technologies such as Jenkins, Spinnaker or GitHub Actions as well as containerization technologies such as Docker. This position requires experience with the following: Linux/Unix or windows involving command-line operations, shell scripting and system administration, as well as troubleshooting and using PowerShell for automation; Designing and developing advanced, dynamic web clients incorporating technologies such as HTML, CSS, JavaScript, Typescript, REST, and JSON; AWS, Azure, or Google public cloud services such as ECS, EKS, S3, Lambda and RDS; Provisioning and managing cloud infrastructure and developing novel solutions stemming from Terraform technology; Following Terraform best practices to write clean manageable HCL code; Designing and optimizing complex, scalable, and secure multi-cloud architectures using tools such as Terraform, Python, Java or Golang to deploy resources in public and private cloud platforms including AWS, Azure, Cloud Foundry or Google Cloud; Deploying software monitoring tools such as Dynatrace, Grafana, Prometheus, Datadog and Cloud Watch to ensure systems health and detect, troubleshot and pinpoint root causes of complex system issues; and Developing and executing comprehensive testing strategies that involve automating system tests including black-box testing, functional testing, performance testing, regression testing, smoke testing, system integration testing, unit testing, user acceptance testing, and white box testing to ensure a high standard of software quality that meets both functional and non-functional requirements.
Job Location: 8181 Communication Pkwy, Plano, TX 75024.