Job Overview:
A Principal Software Engineer in Lexia Learning has a pivotal role in the definition, design, and implementation of our award-winning educational products. You will participate on a software development team to build dynamic web applications utilizing a service-oriented backend architecture. You will be working directly with other teams (Product Management, Content, QA, DevOps, DataOps) to improve, maintain, and support our products on production. And you will be expected to take ownership of individual components, become their subject matter expert, and be involved in planning out their long-term developmental trajectory.
This position requires exceptional communication skills and excellent software technical expertise. Candidates must have a thorough understanding of web applications with multi-tiered backend architecture, as well as extensive experience in hands-on development with software framework written in Java/Spring, Hibernate, Typescript/Javascript, and other current web technologies.
Job Responsibilities:
- Design and implement Java/Spring backend applications
- Able to develop detailed plans, generate designs, and provide rough order of magnitude estimates based on high-level requirements
- Collaborate with our team of educational content and UX designers, product managers, QA staff, and DevOps engineers to ensure the timely delivery of educational software products
- Demonstrate exceptional communication and interpersonal skills
- Troubleshoot complex problems across a multi-tiered architecture and support deployed systems on production
- Works autonomously on multiple projects at one time, balancing needs, and deadlines
- Hold themselves to a high standard of quality and works with the broader team to ensure that our products meet those standards
- Assist in the strategic development and rapid enterprise integration of cyber-security capabilities and tools to protect our applications, systems, and information
- Keeps informed of technical advances and proposes changes based on newer technology
Job Requirements:
- Minimum of ten years of software engineering experience
- Minimum of five years of software engineering experience building multi-tier enterprise applications in Java/Spring and SQL
- Demonstrated track record of designing, developing, and delivering modern web-based applications based on Java/Spring and SQL
- Bachelor’s degree in a technical discipline related to Software Engineering
- Excellent interpersonal and communication skills
- Experience with Hibernate ORM
- Experience with building RESTful or JSON-RPC services
- Experience with CI/CD tools like Jenkins, Git, and Nexus
Preferred Skills and Abilities:
- Experience with AWS services (particularly S3, Athena, Cloudfront, Lambda@Edge)
- Experience with Identity and Access Management (IAM) systems like Keycloak or AWS IAM.
- Experience with OAUTH 2.0
- Experience with MS SQL Server 2019+
- Experience with Typescript/Javascript
- Experience with distributed caching
- Any Information Security certifications
To learn more about our organization and the exciting work we do, visit https://www.lexialearning.com/
An Equal Opportunity Employer
We are dedicated to fostering a culture that celebrates unique backgrounds, ideas, and experiences. All qualified applicants will receive consideration for employment without discrimination on the basis of race, color, age, religion, sex, gender, gender identity/expression, sexual orientation, national origin, protected veteran status, or disability.