Software Architect (Java)
(8+ years exp)$90k – $110k • No equity
Published: 1 month ago
TSS Paratransit
Game-changing software for productive and reliable paratransit
Job Type
ContractVisa Sponsorship
Not AvailableHires remotely in
Relocation
AllowedSkills
Java
Queueing systems — RabbitMQ Kafka
JPA/EclipseLink/Hibernate
Spring Framework
The Role
An established USA transportation software development company is looking for a motivated Principal Software Engineering Lead / Architect. Our software serves more than 1.5 million trips per year, utilizing experience and knowledge accumulated during the company’s 22 year existence as well as modern technologies.
This is a full-time remote position.
Base Qualifications
- 10+ years of software engineering covering all stages of the product and service lifecycles
- 7+ years of experience in software development using Java
- Computer Science fundamentals in system design, data structures, algorithm design, and complexity analysis
- Strong background in OO design
- Working knowledge of enterprise application patterns
- Experience with at least one well-known ORM framework
- 5+ years of experience in working with relational databases
- 2+ years of experience in Spring Framework or in one of the Spring products based on it
- Knowledge of inversion of control design principle and experience with Dependency Injection frameworks
- Knowledge of CI/CD best practices
- Understanding of containerization technologies
- Experience releasing products with 24x7 availability
- Code reviews, design reviews, automated testing, whiteboard discussions
- Experience mentoring junior software engineers to improve their skills, and make them more effective
Preferred Qualifications
- Bachelor’s Degree in Computer Science or a related field
- Experience with evaluating different architectural approaches and solutions
- Comfortable with reactive stack (Webflux, Reactor, etc.)
- Hibernate or EclipseLink
- Spring Cloud
- Experience with monolithic and microservices architectures
- Experience implementing and consuming RESTful APIs (Spring RESTful)
- OpenAPI (Swagger)
- Experience with distributed caches (e.g. Infinispan, Terracota, Hazelcast)
Responsibilities
- Become an expert in all aspects of the software developed by the company, including legacy applications
- Be a role model and coach for the software development team
- Estimate and plan task execution
- Perform hands-on development, prototyping
- Lead code reviews and design reviews
- Communicate with users, other technical teams, and senior management to collect requirements, describe software product features and technical designs if needed
- Deploy new releases or assist in deployment
- Document solutions and software code according to best practices
- Report team progress to the company leadership
- Participate in discussions on how to improve and optimize internal processes and practices
- Mentor team members