The Software Engineer is responsible for developing, maintaining, and identifying improvements by planning, implementing, and monitoring software framework solutions.
Test drive custom software
Lead the evolution of new and antiquated/monolithic custom software solutions into solutions balancing cost and quality concerns
Participate and support in Scrum and targeted XP practices
Participate in production troubleshooting as needed on or off hours
Infrequent travel when needed
Bachelor's degree from an accredited institution or equivalent industry experience
5+ years of experience in mobile software development role on iOS and/or Android development
2+ years of experience working with Google Flutter and Android Studio
Familiarity with publishing mobile applications to Apple AppStore or Google PlayStore
Advanced knowledge and experience working with OOP Design Patterns (GoF), Enterprise Application Architecture, and Enterprise Integration Patterns
Polyglot programmer with experience working in various languages and paradigms (OOP, Functional, Imperative, Declarative, etc.)
Disciplined Test Driven Development (TDD) practitioner and familiarity with Behavior Driven Development / Specification by Example (BDD)
Understand of distributed architecture, service oriented architecture, event-driven architecture, microservices architecture, domain driven design and a deep understanding of the REST architectural style
Experience implementing concurrency, parallelization, eventual consistency, and asynchronous programming
Versed in modern web protocols and technologies, including HTTP, TCP/IP, WebSockets, etc.