Network Automation Python Software Engineer III
Bank of America
Job Description:
At Bank of America, we are guided by a common purpose to help make financial lives better through the power of every connection. Responsible Growth is how we run our company and how we deliver for our clients, teammates, communities and shareholders every day.
One of the keys to driving Responsible Growth is being a great place to work for our teammates around the world. We’re devoted to being a diverse and inclusive workplace for everyone. We hire individuals with a broad range of backgrounds and experiences and invest heavily in our teammates and their families by offering competitive benefits to support their physical, emotional, and financial well-being.
Bank of America believes both in the importance of working together and offering flexibility to our employees. We use a multi-faceted approach for flexibility, depending on the various roles in our organization.
Working at Bank of America will give you a great career with opportunities to learn, grow and make an impact, along with the power to make a difference. Join us!
Job Description:
This job is responsible for developing and delivering complex requirements to accomplish business goals. Key responsibilities of the job include ensuring that software is developed to meet functional, non-functional and compliance requirements, and solutions are well designed with maintainability/ease of integration and testing built-in from the outset. Job expectations include a strong knowledge of development and testing practices common to the industry and design and architectural patterns.
Responsibilities:
- Codes solutions and unit test to deliver a requirement/story per the defined acceptance criteria and compliance requirements
- Designs, develops, and modifies architecture components, application interfaces, and solution enablers while ensuring principal architecture integrity is maintained
- Mentors other software engineers and coach team on Continuous Integration and Continuous Development (CI-CD) practices and automating tool stack
- Executes story refinement, definition of requirements, and estimating work necessary to realize a story through the delivery lifecycle
- Performs spike/proof of concept as necessary to mitigate risk or implement new ideas
- Automates manual release activities
- Designs, develops, and maintains automated test suites (integration, regression, performance)
Position Summary:
The Technology Infrastructure Organization is in search of an experienced Network Automation Software Development Engineer who is capable of providing advanced coding to automate network infrastructure.
Interfaces with business areas to ensure all initiatives support business strategies and goals. Assists in overall application delivery, business aligned goals and scalability for future growth. Executes on architected high-level designs, provides diagrams, and documentation. Collaborates with other architects, software engineers, vendors, consultants, Product Managers and Sr Tech Manager(s) for a product centric delivery.
Responsibilities:
- Translates business and technical requirements into a software architecture that will facilitate the automation of both Load Balancing and DDI (DNS, DHCP & IPAM) service delivery.
- Works closely with the product owners and product managers to ensure a robust software architecture that can support future business requirements throughout the automation product lifecycle.
- Assists in evaluation, design, and analysis for the implementation of automation across Network Services on enterprise business strategy, business capabilities, value-streams, business requirements and enterprise standards.
- Collaborates in development of roadmaps for the evolution of service automation from current to future state.
- Significant software design / application development experience required to provide technical guidance to DevOps teams.
- Updates, documents related infrastructure automation used to deliver both self-service and full-service capabilities.
- Provides consulting support to software engineers and product owners within agile teams to ensure the project or product is aligned with the overall automation architecture.
Required Qualifications:
- 5 + years advanced software development experience in multiple frontend and backend languages (Python, Go, Yang, NSO, Ansible, Java, and Bash scripting)
- Skilled in developing solutions for network defined automation and/or cloud IT solutions, including API Development and Integration
- Experience with various database technologies like MySQL, MongoDB and MariaDB.
- Knowledge of both distributed / parallel software architectures and different modeling languages (such as UML and ArchiMate)
- Understanding of IT standards, controls and application security development
- Excellent understanding of application development methodologies and infrastructure as well as analytical, planning, and organizational skills
- Knowledge of system development life cycle methodologies (such as waterfall, spiral, agile software development, rapid prototyping, incremental, synchronize and stabilize, and DevOps)
- Proficiency in executing Continuous Integration/Continuous Delivery (CI/CD) and delivering automated software testing.
- Working knowledge of JIRA/Remedy/Service Now
- Outstanding written and verbal communication skills, with the ability to work with developers in an outsourced environment.
Desired Qualifications:
- Bachelor's degree in computer science, information-technology, engineering, or a related study,
- Exposure to multiple, diverse technologies, platforms, and processing environments
- Advanced understanding of strategic and emerging software development trends, and the practical application of existing and emerging development methods
- Good understanding of product management
- Network as a Service automation
- Cloud Services automation
Skills:
- Application Development
- Automation
- Influence
- Solution Design
- Technical Strategy Development
- Architecture
- Business Acumen
- DevOps Practices
- Result Orientation
- Solution Delivery Process
Shift:
1st shift (United States of America)Hours Per Week:
40