U.S. Bank is seeking an API Engineer to join the ICS API Journey. You'll be joining a team of engineers and scrum masters and will be responsible for building the credit card APIs. You will be involved in the technical details of building highly available and reliable services, while also working with product teams to build new capabilities for U.S. Bank Above the Glass applications.
In addition, focus on technological solution delivery by guiding and inspiring strong coding practices and solid software design decisions among their team. Responsible for growing and mentoring engineers as it relates to technical skills and career development. Assists with cross-team strategic efforts, influencing decisions to achieve efficient delivery of business value. Understands cross-team technical roadmaps, advocating new product abilities based on technical strategy and constraints.
- Responsible for designing, testing, developing, operating, and maintaining products, sometimes under the guidance of principal engineers.
- Consistently writes production-ready code that is easily testable, easily understood by other developers, and accounts for edge cases and errors.
- Consistently considers best practices when designing APIs and applies applicable patterns across several contexts/codebases, in accordance with agreed best practices and standards. Regularly designs code that fits with the overall architecture.
- Uses systematic debugging to diagnose cross-service issues and is adept at using a range of tools to detect when there is an incident and raises this with stakeholders in a timely manner.
- Takes ownership of incidents that fall in their domain and may be involved in the resolution of an incident or provide assistance to others on resolving incidents.
- Understands and knows when to use different data structures. - Understands when algorithms should be applied and the associated complexities. Helps others build their understanding of the applied algorithm and suggests improvements.
- Consistently creates reasonable-sized code reviews that contain descriptions of changes and testing conducted. Assesses other code reviews with the lens of quality and value - code quality, acceptance criteria, business logic, test coverage and aligned to the overall architecture. Highlights any issues with a code review that might result in release complications. Proactive in evaluating code reviews in the team and resolving open code reviews in a timely manner.
- Understands their team's testing approach and uses quality metrics to identify gaps. Works with their team to recommend solutions that are in accordance with accepted testing frameworks and the testing pyramid.
- Approaches engineering work with a security lens and actively looks for vulnerabilities both in the code and when providing code reviews. Has a holistic view on how the applications across more than one context integrate with each other. Is aware of the organization's monitoring philosophy and skilled with the monitoring tools. Helps tune and change the monitoring on their team accordingly.
- Develops techniques on effective coaching strategies for different individuals. Seeks out mentoring opportunities specifically to increase knowledge in parts of the system that is not well understood. Supports and advocates others and provides tools to help them grow their understanding of a technical topic.
- Actively participates and understands Scrum while developing a point of view on an effective software delivery process.
- Reviews tasks critically and ensures they are appropriately prioritized and sized for continuous integration and incremental delivery. Anticipates and communicates blockers, delays before they require escalation.
- Creates project proposals and designs that have a considerable impact or touch multiple systems. Technical designs are clear, well thought out, and consider dependencies, failure states, maintainability, testability, and ease of support.
- Keeps business context in mind when proposing architectural decisions. Also consider scalability, reliability, and performance of systems/contexts affected when defining technical designs.
- Bachelor's degree, or equivalent work experience
- Three to five years of relevant experience
- 5+ years of experience in Java EE(Jakarta EE) design and development
- 5+ years of experience in REST API & Spring boot design and development
- Knowledge in API security risks and microservices resilience
- Experienced in Git, Jira, Jenkins, and test automation
- Experience in agile methodology, and SCRUM/KABAN
- Experienced in Apigee, Istio, Kubernetes, Kafka, AWS, and Google Cloud Platform preferred
- Experienced in financial application development preferred
- Good communication and collaboration skills to drive onshore/offshore development activities
- Self-motivated and keen to learn new knowledge
- Thorough understanding of a feature, the users impacted, the flows impacted and the feature's purpose
- Ability to analyze the bigger picture, identifying and prioritizing with the aim to consider more than one domain within an analysis
- Thorough understanding of the business model in relation to the current product focus area
- Adept with agile software development lifecycle and DevOps principles
- Ability to collaborate on all aspects of product development
- Technically proficient and able to define and fulfill solutions requirements for end-user
- Able to communicate processes and results with all parties involved in the product team, including engineers, product owner, scrum master, third party vendors, and customers
- Strong problem-solving and analytical skills
- provided by Dice