Source description
About the role
Principal Software Architect 6 months contract to hire 100% Remote Managerial Responsibilities: Collaborate with stakeholders to understand business requirements and translate them into technical solutions. Lead a team of software developers and provide guidance on software design, development, and testing. Participate and facilitate Agile meetings including Poker Planning, Iteration Planning, Daily Scrum, Iteration Review, and Retrospectives. Set & maintain standards for code quality and maintainability, with a focus on extensibility, code reuse, and thorough testing. Participate in code reviews and provide constructive feedback to other developers. Expected Technical Background: You have extensive experience scaling & working with enterprise systems. You have experience with managing many vendors and 3rd party APIs. You are passionate about designing & developing high-throughput, high performance, and responsive systems. You have experience with orchestration platforms (like Mulesoft, Apigee) and with messaging tools (Queuing, Pub/Sub, Kafka). You have experience deploying & scaling enterprise applications using GCP services and Kubernetes. You have familiarity with domain driven design, API first development, and test-driven development. You have experience working with both non-relational and relational databases and can speak to differing strategies for partitioning and protecting client data. You have experience working on projects with high code coverage and good documentation, especially self-documenting code. Familiarity with Java 8+ concepts such as streams, lambdas, and new multithreading frameworks. Some knowledge of ORMs such as JPA and Hibernate.
Nice to Have: Some experience or the ability to quickly learn modern UI frameworks: React and EcmaScript 6+, promises and observables, flux/redux patterns for state management, webpack and hot module replacement, test with enzyme or jester, interested in working with micro frontends using UI composition.
Qualifications
10+ years of software engineering experience or similar project experience 5+ years of experience working in large highly regulated organizations, such as finance or healthcare Experience leading teams in developing complex enterprise software. This includes automated build, automated system, integration, & unit tests. Bachelor’s degree in computer science; Master’s degree preferred Startup or entrepreneurship experience is a plus Technologies: Java Spring Boot Spring MVC Any ORM Oracle, MySQL, or Postgres GCP tools (Including but not limited to Cloud Run, GKE, Cloud Functions, Firebase) REST and SOAP Experience with Integration and Unit Testing Frameworks Alloy, a Vendor for Identity Decisioning [nice to have]
More at Thoughtwave Software and Solutions