Expoint - all jobs in one place

Finding the best job has never been easier

Limitless High-tech career opportunities - Expoint

Bank Of America Software Engineer II 
United States, Texas, Plano 
994865955

30.08.2024

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, coding solutions, unit testing, and ensuring the solution can be integrated successfully into the overall application/system with clear, robust, and well-tested interfaces. Job expectations include an awareness of development and testing practices in the industry.

A Network Automation Developer is responsible for developing, deploying and testing microservices, application and user interfaces, ansible templates and resource adapters (i.e. plugins) in our BofA Network Automation Engine platform. The developer will be writing python and ansible modules that deploy network fabrics via a controller. The developer will also write and execute tests to validate the automation against known standards.

Required Qualifications

Technical Skills:

  • Strong proficiency in Python programming and Linux OS. (Ubuntu, CentOS, etc.).
  • Familiarity with shell scripting (Bash).
  • Experience with version control systems (e.g., Git).
  • Understanding of network protocols and services (DNS, DHCP, HTTP, SSH, etc.).
  • 8 years of experience required .
  • Bachelor’s degree in Computer Science, Information Technology, required .

Software Development:

  • Develop and maintain Python-based applications and scripts.
  • Write clean, efficient, and well-documented code.
  • Debug and troubleshoot software issues.
  • Develop microservices, APIs, service templates that define the services that we provide to our customers.

Systems Administration:

  • Manage and maintain Linux servers and systems.
  • Perform routine system monitoring, performance tuning, and troubleshooting.
  • Ensure system security and compliance in line with BOA best practices.
  • Effectively use Jira and Confluence to manage and document work.

Automation and Scripting:

  • Automate repetitive tasks and workflows using Python and shell scripts within virtual environment.
  • Develop and maintain CI/CD pipelines for deployment automation.
  • Deploy code to our development, QA, Staging and Production servers using our continuous integration and deployment pipeline platform
  • Test new services are functioning as expected using our testing framework, and add new test cases to the test suite to continuously improve our quality assurance bar.

Collaboration:

  • Work closely with cross-functional teams to understand requirements and deliver solutions.
  • Participate in code reviews and provide constructive feedback.
  • Collaborate with DevOps engineers to streamline operation and process.
  • Participate where required in on team on call rota to support application users.

Documentation:

  • Create and maintain technical documentation for systems and processes.
  • Document code and systems configurations.

Desired Qualifications -

  • Proven experience as a Python developer (3+ years).
  • Hands-on experience with Linux system administration (3+ years).
  • Experience with automation tools and frameworks.
  • Agile (Lean or Scaled Agile Framework) (3+ years)
  • Excellent problem-solving skills.
  • Strong communication and collaboration abilities.
  • Ability to work independently and as part of a team.
  • Attention to detail and commitment to quality.
  • Preferred Qualifications:
  • Knowledge of database systems (SQL, Nautobot).
  • Arista ACE Level 5+ or Cisco DevNet S/P/E
  • Familiarity with infrastructure as code (IaC) tools such as Ansible.

Responsibilities:

  • Codes solutions and unit test to deliver a requirement/story per the defined acceptance criteria and compliance requirements
  • Utilizes multiple architectural components (across data, application, business) in design and development of client requirements
  • Performs Continuous Integration and Continuous Development (CI-CD) activities
  • Contributes to story refinement and definition of requirements
  • Participates in estimating work necessary to realize a story/requirement through the delivery lifecycle
  • Contributes to existing test suites (integration, regression, performance), analyze test reports, identify any test issues/errors, and triage the underlying cause
  • Performs spike/proof of concept as necessary to mitigate risk or implement new ideas

Skills:

  • Application Development
  • Automation
  • Collaboration
  • DevOps Practices
  • Solution Design
  • Agile Practices
  • Architecture
  • Result Orientation
  • Solution Delivery Process
  • User Experience Design
  • Analytical Thinking
  • Data Management
  • Risk Management
  • Technical Strategy Development
  • Test Engineering
1st shift (United States of America)