Fullstack Software Engineer Lead
Location: Chicago, IL
Salary: $105k to $125k
You will be coding at least 80% of the time and leading projects as well as mentoring less experienced Software Engineers on the team.
- Bachelor s or Masters/MBA degree in a field such as Computer Science or Data Architecture
- 8+ years of experience developing and implementing systems at scale.
- Strong understanding of computer science concepts, object oriented design principles
- Strong understanding of distributed systems, operating systems, networking, databases, security, and analytics
- Hands on experience and accountability architecting, designing, implementing and delivering large scale distributed systems and/or applications for the cloud, including microservices architectures and 12-factor principles
- Experience developing software in different programming languages, and demonstrated ability to quickly learn new languages, including but not limited to React JS, Java (Spring) & Python
- Experience and knowledge in developing REST APIs including tooling for documentation (swagger, REST-docs, openapi spec), versioning, service discovery/registration, testing and management; experience using API gateways a plus
- Experience and knowledge in web and API security including authentication, authorization, OAuth, OWASP, OpenID, and SAML
- Experience in backend development design and implementation; database (relational, NoSQL, caching), messaging and big data development, implementation and optimization
- Actual experience developing continuous integration, continuous delivery and continuous deployment pipelines for distributed apps
- Knowledge and advanced experience using distributed version control systems (git), artifact management systems, build and packaging systems (maven, gradle, npm, artifactory, etc ) and continuous integration tools (Jenkins).
- Knowledge and experience on approaches and tools for automated testing (including performance testing) and monitoring
- Experience working in an eXtreme Programming (XP) or any agile environment
- Experience in Test Driven Development; including knowledge and experience in testing frameworks like junit, mockito, jasmine, protractor, cucumber, and other like technologies
- Able to lead agile teams and lead collaboration across teams; serving as an anchor or technical lead for complex distributed systems spanning multiple apps, services, APIs, and datastores
- Familiarity with open source software
- Able to learn new technologies, and teach other members of the team/s
- Able to work effectively across organizational and geographical boundaries
The candidate(s) offered this position will be required to submit to a background investigation, which includes a drug screen.