The Software Engineer is involved in the full systems life cycle and responsible for designing, coding, configuring, testing, implementing and supporting application software and systems that are delivered on time and within budget. They will be part of a DevOps minded team partnering with Infrastructure Engineers and Infrastructure Operations. They work closely with Architects to define the physical design, and with Analysts and Product Managers to understand the business requirements that drive the analysis and physical design of technical solutions. Software Engineers may be assigned to either development or support functions.
They will partner with IT Infrastructure Team Members to ensure the IT infrastructure is sufficiently robust, scalable and efficient to deliver the integrated services underlying the physical environment. They build, test, implement, configure, tune and support the IT infrastructure in the cloud and on-premise, including the server platforms, storage systems, middleware infrastructure and network.
- Application Development: Designs and develops optimal system solutions to meet business needs. Assist in providing direction on solutions to ensure solutions are flexible, scalable, and adhere to company standards.
- Application Performance: Creation of reusable components and other performance-enhancing techniques. Reports issues seen through monitoring reports on performance.
- Application support: training, analysis, testing, documentation and support team members.
- Hardware and software evaluation: Performs hardware and software evaluation, assists in compiling results and new software recommendations.
- Task-level estimation: provides and mentors.
- Agile SDLC: Leads initiate and Plan phases, develops project scope, objectives and resource estimates.
- Automated Unit testing: Assist in defining TDD best practices. Writing and executing automated unit and integration testing.
REQUIRED EXPERIENCES AND COMPETENCIES:
- BA/BS in Computer Science or similar subject or equivalent experience preferred.
- Python, Perl, Shell Scripting programming languages preferred.
- 2-8 years of development experience is preferred.
- Demonstrates knowledge of a broad range of hardware and software products. Experience with VMWare, AWS, Azure, Redhat, SUSE, Cisco, UCS, systems administration are preferred.
- Experience with automation, DevOps and Bimodal are a plus.
- Experience working in an agile team environment.
- Demonstrated ability to analyze and interpret complex problems or processes, identify and understand requirements, and develop alternate solutions.
- Experience designing, developing, testing and deploying applications/systems using proven or emerging technologies, in a variety of technologies and environments.
- Experience with automation tools.
- Strong troubleshooting and problem solving skills.