You have a life. We like that about you.
At OCLC, we believe you'll do the best work of your life when you're living the best life possible.
We work hard to build the technology that connects thousands of today's libraries. But we also work hard to make a job at OCLC a meaningful part of a balanced life- not a substitute for one.
Technology with a Purpose. OCLC supports thousands of libraries in making information more accessible and more useful to people around the world. OCLC provides shared technology services, original research and community programs that help libraries meet the ever-evolving needs of their users, institutions, and communities. With office locations around the globe, OCLC employees are dedicated to offering premier services and software to help libraries.
The Job Details are as follows:
The Enterprise Identity Management team, an OCLC Shared Service, is seeking a skilled and experienced Lead Software Engineer to provide hands-on development and technical direction. The ideal candidate will have a strong background in software development with expertise in designing, implementing, and maintaining Identity Management Applications using the Spring Framework. This role requires knowledge of relational databases, along with a proven track record of leading technical teams to deliver high-quality solutions. Experience with front-end applications using React is a plus.
Responsibilities:
1. Technical Leadership: Lead the design, development, and implementation of identity management applications & services using REST and the Spring Framework.
2. Team Collaboration: Collaborate with teams including developers, architects, quality assurance, and product owners to understand requirements and turn them into technical solutions.
3. Code Review and Standards: Conduct code reviews to ensure adherence to coding standards, best practices, and security guidelines. Ensure that code is being unit tested appropriately.
4. Database Management: Develop and optimize database schemas and queries for MySQL and PostgreSQL databases to ensure optimal performance and reliability.
5. Technical Guidance: Provide technical guidance and mentorship to junior developers, helping them to grow their skills and capabilities.
6. Architecture Design: Assist in the design of scalable and secure identity management architectures tailored to meet business requirements.
7. Problem Solving: Analyze and resolve complex technical issues.
8. Documentation: Create and maintain technical documentation including design documents, architecture diagrams, and system manuals.
Qualifications:
9. Bachelor's degree in computer science or related discipline required and 8+ years of software development experience
10. Proficiency with Object Oriented Design (and UML notation and patterns), Java, REST API concepts, and the Spring Framework (ideally including Spring 6, Spring Boot 3, and Spring Security)
11. Strong understanding of relational databases, ideally with hands-on experience in MySQL, PostgreSQL, or similar databases
12. Strong understanding of Identity Management concepts
13. Strong communication and interpersonal skills, with the ability to effectively collaborate with team members and stakeholders.
14. Proven track record of leading technical teams and delivering complex projects on time and within budget
15. Experience with Agile development methodologies and current DevOps practices
16. Experience with front-end development, ideally including React
17. Familiarity with unit testing, integration testing and performance/stress testing
Working Conditions: Normal office environment.
ADA/EAA: The above statements cover what are generally believed to be the principal and essential functions of this job. Specific circumstances may allow or require some people assigned to the job to perform a somewhat different combination of duties.