Backbone logoBackbone Jobs

Senior Software Engineer

Wells Fargo logoWells Fargo

Job Description

Wells Fargo is seeking a Senior Software Engineer.

We are looking for an experienced and fully hands-on Application Support Engineer with deep understanding of Reliability Engineering (SRE) principles, and considerable practical experience implementing them in complex enterprise environments, to join our WIMT Platform team. This Application Support Engineer / SRE will assume Operational Ownership (in partnership with Software Development and Business owners) of a subset of WIMT systems and applications, with the primary focus on improving Reliability and Supportability -- by acquiring deep understanding of the in-scope systems, and using SRE principles to operate them.

Ideal candidate enjoys and takes pride in solving complex technical problems, using creative approaches to troubleshooting and weakness analysis, automating routine or risky manual operations, sharing knowledge and experience with colleagues, and leading others by personal example. Candidate will join a passionate engineering Team that combines various skillsets and experiences as Systems Engineers, Software Engineers and Infrastructure Engineers, to achieve strategic reliability and everyday operational health goals. Additional key responsibilities are listed below.


In this role, you will:

  • Lead moderately complex initiatives and deliverables within technical domain environments

  • Contribute to large scale planning of strategies

  • Design, code, test, debug, and document for projects and programs associated with technology domain, including upgrades and deployments

  • Review moderately complex technical challenges that require an in-depth evaluation of technologies and procedures

  • Resolve moderately complex issues and lead a team to meet existing client needs or potential new clients needs while leveraging solid understanding of the function, policies, procedures, or compliance requirements

  • Collaborate and consult with peers, colleagues, and mid-level managers to resolve technical challenges and achieve goals

  • Lead projects and act as an escalation point, provide guidance and direction to less experienced staff.

  • Operational Ownership / Application Support:

  • Maintain system operational knowledge (functional and technical)

  • Understand and monitor system operation, ensure optimal availability, functional health, and performance (driven by SLO/SLA)

  • Triage alerts, respond to incidents, perform root cause analysis (troubleshooting)

  • Handle users' questions and requests related to business systems (not a Desktop Support)

  • Change requests implementation (manual deployment steps, overall deployment coordination)

  • BCP planning and implementation

  • Ensure continuous improvements of operational processes and methods

  • Reliability Engineering:

  • Analyze system's monitoring and observability needs (technical, functional, business), and create or adjust logging, monitoring, alerting and analytics solutions to cover those needs

  • Use understanding of software engineering (system code) and infrastructure to improve the depth and quality of root cause analysis (troubleshooting)

  • Partner with Architecture, Infrastructure and Development teams to influence decisions that impact reliability and supportability

  • Identify routine or risky manual operations, and create automation solutions (scripting, tooling) or influence fixing the sources of manual work (as appropriate)

  • Drive deeper post-incident reviews for major incidents, to learn and improve

  • Engage in weakness research and analysis, and architectural reviews, to use deep knowledge of production operation to suggest improvements

  • Use deep knowledge of production operation to create detailed high-quality stories and tasks on DEV owners' backlog, with the focus on reliability and supportability

  • Ensure continuous improvements of systems' reliability and supportability


Required Qualifications:

  • 4+ years of Software Engineering experience, or equivalent demonstrated through one or a combination of the following: work experience, training, military experience, education

Desired Qualifications:

  • 12+ years of software engineering experience

  • 5+ years of application production support experience

  • Education BS/BA degree or higher

  • An industry-standard technology certification

  • Strong verbal, written, and interpersonal communication skills

  • 3+ years of experience with Cloud technologies    

  • Knowledge and understanding of Site Reliability Engineering (SRE) concepts         

  • 3+ years of Agile experience            

  • Advanced scripting skills specifically around automation, log rotation, data collection, error collection and alerting

  • Scripting and automation experience

  • Experience with complex business logic and dependencies

  • 3+ years of CI/CD automation and configuration experience (DevOps / pipeline automation)

  • 3+ years of experience with ITSM processes (e.g. Incident Management, Change Management, Asset Management and Configuration Management)  

  • Hands-on experience with writing / maintaining technical documentation such as fixlogs, runbooks, knowledge base, architectural diagrams

  • Hands-on experience with system administration across multiple platforms

  • Hands-on experience with one or more software development languages: Java, JavaScript, Ruby, Python, JSON, Angular, NodeJS, .Net/C#

  • Hands-on experience with one or more CI/CD automation tools: Jenkins, Gradle, Maven, Git, SonarQube, Artifactory, Ansible, Puppet, Apigee

  • Hands-on experience with one or more process management and scheduling tools: Autosys, ControlM

  • Hands-on experience with one or more Monitoring/Observability/APM/Analytics tools: Splunk, Elastic, Kibana, Grafana, Prometheus, AppDynamics, Dynatrace, New Relic, DataDog, Kafka, CloudWatch, Jaeger, Zipkin, Big Panda, TrueSight

  • Hands-on experience with one or more Server OS: Windows, Linux, Unix, Mainframe

  • Hands-on experience with one or more Cloud and virtualization technologies: Azure, GCP, AWS, PCF, PKS, Kubernetes, OpenShift, VMware

  • Hands-on experience with one or more Data storage, management and messaging technologies: Kafka, IBM MQ, Apache Airflow, Logstash, Spark, Oracle, SQL, MongoDB, Cassandra, Hadoop, Cloudera, AWS EMR, S3

  • Hands-on experience with one or more Testing Frameworks: Selenium, JMeter, Blazemeter, Performance Center, Perfecto, Cucumber, Gherkin, ALM, Gremlin, Chaos Monkey, Chaos Toolkit, Simian Army, Toxi Proxy

  • Working knowledge of TCP/IP networking, experience analyzing packet captures to assist in troubleshooting

  • Working knowledge of Internet technologies: routing, NAT, firewalls, load-balancing, proxies, web servers

Job Expectations:

  • Ability to work additional hours as needed

  • Ability to work on call as assigned

  • Flexibility to work in a 24/7 environment, including weekends and holidays

Explore more jobs

Browse more opportunities from trusted companies, filter by technology, location, and seniority, and find the next role that fits you best.

Browse all jobs

    Related Articles

    Insights related to the expertise required for this role.

    Frequently Asked Questions

    Common questions about Backbone Jobs and how we help you find your next role.