Responsibilities:
- End-to-end responsibility for projects of increasing complexity that encompass more than their own development
- Be independent with little oversight beyond high level direction, works on complex tasks and completes them despite roadblocks, including debugging techniques
- Appropriately scope high-level project requirements, find a solution, implement and launch that solution
- Help large groups of engineers deliver complex projects with drama-free launches, owning the technical testing and performance planning side of these projects
- Deliver software on-time and improve the accuracy of team's estimations
- Understand the business that their code supports, and possess empathy for the users of their software, using this understanding to influence their task prioritization
- Understand the tradeoffs between technical, analytical and product goals, and strive to create solutions that satisfy all of these goals
- Know how to not only identify technical problems and create solutions, but are also able to get cross-team buy-in for their solutions and manage projects to make these solutions come to life
- Write consistently high-quality code, deliver features to QA that they believe are well-baked and bug-free, being aware of industry best practices and trends
- Be known outside of their core team as a technology leader, working effectively with non-tech members of their pillar. Ability to identify problems with requirements and help their team course-correct around these issues
- Involved in setting the standards for the entire organization and providing technical advice and decision-making that affects not only their group but other teams or the company at large
- Research and propose new technologies, and have a broad understanding of the entire architecture, as well as very detailed understanding of their area
- Identify big issues and opportunities in the technology and organization, and work across teams to create solutions to these issues
- Proactively identify and clean up technical debt before it turns into a long-term problem, and encourage and enable their team to do the same
- Identify risks in code, features, and design, and communicate these to the appropriate parties
- Set the direction in some major part of the technology for their pillar and have a major role in the pillar or team's decision-making process
- Participate in architecture designs providing feedback and also providing designs with guidance from the architecture team, as appropriate
- Ability to identify and suggest areas of future work for themselves and others while contributing to the common standards for the team
- Balance leadership and individual contribution by providing extensive mentoring of junior team members while maintaining deep individual contribution
- Seek evidence to support their ideas and start to build cases for these ideas
- Support deployment releases as needed and maintain the application once it's in production
Qualifications and education requirements:
?
- BS/MS degree in Computer Science, Engineering or a related subject
- Proficiency in Java and Enterprise Java technologies and development
- Expert in the Spring framework (Spring, Spring MVC, Spring Boot, Spring Security, etc)
- Expert in designing and implementing RESTful web services
- Experience with responsive frameworks like bootstrap and FlexLayout
- Experience with Lighthouse PWA Analysis Tool
- Expert building web applications from the ground up
- Knowledge of or working experience with CI/CD pipelines; including technologies such as Docker, Jenkins/Concourse
- Experience with cloud technologies, such as GCP
- Agile (scrum) based delivery practices, test driven development, test automation, and continuous delivery
- Solid understanding of object-oriented principles
- Demonstrated success in building design patterns and software engineering best practices
- Experience with Oauth2
- Solid understanding of hibernate
- Solid Understanding of microservices
- Excellent knowledge of Relational Databases, SQL and NoSQL
- Experience with maven
- Experience with JBoss application server
- Experience with Java Messaging
- Have at least one skill outside of programming, like monitoring, performance optimization, documentation, integration testing, visual design.
- Understanding of gitflow workflow
- Spanish: Native
- English: Written and spoken proficiency
Must have Experience:
- Java: 6+ years
- Spring Framework: 4+ years
- Angular 14+/Typescript: 2+ years
- CI/CD: 2+ years