The Principal Software Engineer (SWE V) will design and develop backend solutions using the latest Microsoft Java technologies. You must be well-versed and comfortable working in all aspects of a multi-tiered architecture, including but not limited to Cloud Based applications and CI/CD processes.You're able to demonstrate excellent problem-solving skills, self-motivated, highly detail oriented, able to context switch easily, able to work with vendor/offshore team(s), good team player.You'll work with other engineers, managers, Product Management, QA, and Ops teams to develop innovative solutions that meet company initiatives with respect to functionality, performance, scalability, reliability, realistic implementation schedules, and adherence to development goals and principles.The ideal candidate will be located near Louisville, CO, and able to join the team at our office 2-3 times per week, however we are willing to hire someone remotely, as all office attendance is strictly voluntary at this time. Principal duties and responsibilities:
- Define, Design and develop components using Java
- Collaborate with architects, Systems Engineering and Product Management and other technical and non-technical stakeholders in the current product development process
- Formulate and communicate technical vision and strategy to business and technical stakeholders
- Design and develop data architecture, data definition and data manipulation structures in multiple database solutions including MySQL, MongoDB, ElasticSearch.
- Implement all aspects of development, to include database, presentation, middle tier and system interfaces
- As a member of the Agile delivery team, collaborate with the rest of the team and product daily
- Respond quickly to changes in requirements
- Develop system and maintenance documentation
- Participate in Project planning and Estimation
- Prepare the architectural document artifacts
- Mentor development teams around sound design and coding practices
- Assist with testing and release process
- Coordinate with development team, perform code, design & architectural reviews
- Execute architectural design spikes
- Evaluate third party software products used in the solution as needed
- Provide detailed & accurate estimates for code development efforts
- BS in Computer Science, or related degree (Math, Engineering, Computers) required, or a combination of education and related experience
- 8+ years' professional development experience in Java
- 3+ years' experience with service oriented development
- Experience with SOA using REST, SOAP RPC, HTTP, TCP IP, UDP Protocols
- Familiarity using Linux is a plus
- Strong problem solving and analytical skills
- Strong written and oral communication skills
- Experience working in an Agile scrum team environment
- Excellent troubleshooting skills and being able to work under pressure
- Ability to demonstrate initiative, not only to accomplish assigned development tasks with a minimum of prepared documentation, but also to identify areas for improvement, and ability to combine these improvements into the product
- Experience with AWS
- Experience with Rules Engine and/or Event driven architecture
- Experience creating unit tests
- Exposure to performance and scalability improvement
- Languages: Java, Python, NodeJS
- Backend: MySQL, MongoDB, ElasticSearch, DynamoDB,
- XML, Java Script, Ajax, CSS
Read Full Job Description