Job Description
What is the role?
You will be a key member of our Application Development Team, solving complex and unique business challenges with forward-looking architectures in a collaborative Agile environment. As an architect you will design, build, and enhance highly available and scalable systems. You will direct major deliverables of projects through all aspects of the software-development lifecycle, including scope, work estimation, architecture and design, coding, and unit testing. Additionally, you will determine and recommend the best designs based on customer business objectives, timelines, and other resource constraints.
Your responsibilities will include:
Evaluating/understanding business requirements and designing and developing forward-looking, high-performing software solutions utilizing the latest technologies and industry best practices
Coordinating closely with team members, product owners, and scrum masters to ensure user story alignment and development per business requirements
Mentoring engineering team members in technical best practices, and providing feedback in design and code reviews
Providing subject matter expertise in our core technologies, such as Java, database, and AWS
Continuing to develop your field of knowledge in database, Java, and related technologies by attending conferences, prototyping new technologies, and exploring new areas of interest
Working across departments to design and deliver solutions from inception to production
Building subject matter expertise of our core back-end financial processes
Providing support and troubleshooting capabilities to our production systems, as needed, to remediate unexpected issues and outages
Developing and evangelizing best practices in line with current trends and technologies, with consideration for our existing policies and procedures
Leveraging Atlassian tool suite, like JIRA and Confluence, to track activities and progress
You should possess the following experience, skills, and qualifications:
Bachelor’s or master’s degree in computer science or relevant field
Minimum 7 years of experience in architecture, design, and development of complex enterprise applications
Ability to provide technical leadership to engineering team within a larger project
Minimum 5 years of experience leading projects using Agile/Scrum development processes and DevSecOps, including CI/CD
Experience with software development lifecycle (SDLC) from conception through end of life, including use of iterative development, test-driven development, introduction of testing concepts (manual/automated) early in the process, and installation and troubleshooting techniques
Strong proficiency and hands-on expertise with Java/Object-oriented programming, SQL, PL SQL, and AWS and related technologies
Strong proficiency with basic web technologies, including HTML, CSS, XML, SOAP, WSDL, REST, JSON, and JavaScript
Proficiency with at least one Relational Database Management System (e.g., Oracle, MySQL, PostgreSQL, SQL Server)
Excellent written, verbal, and visual communication skills to explain complex topics concisely to both technical and nontechnical audiences
Experience with version control system (e.g., Git)
Experience with an issue/problem tracking system (e.g., Jira)
Preferred qualifications:
Experience in financial applications
Knowledge of directed graph theory/optimization
Knowledge of accounting
Certifications in Java and AWS
Knowledge of CI/CD tools, such as Jenkins, SonarQube, and Junit
Knowledge of Agile Development tools, such as Jira, Bitbucket, and Confluence