Job responsibilities
- Executes software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems
- Creates secure and high-quality production code and maintains algorithms that run synchronously with appropriate systems
- Produces architecture and design artifacts for complex applications while being accountable for ensuring design constraints are met by software code development
- Gathers, analyzes, synthesizes, and develops visualizations and reporting from large, diverse data sets in service of continuous improvement of software applications and systems
- Proactively identifies hidden problems and patterns in data and uses these insights to drive improvements to coding hygiene and system architecture
- Contributes to software engineering communities of practice and events that explore new and emerging technologies
- Works in an agile team environment on a large scale
- Good with architectural designs
- A curious problem solver
- Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 3+ years applied experience
- Must be a U.S. Citizen or Permanent Resident with 7+ years of U.S. residency
- Hands-on practical experience in system design, application development, testing, and operational stability
- Proficient in coding in one or more languages. Advanced experience with Java, J2EE and SQL server is a must. Experience in .NET frameworks, C# is a Plus. Web based development experience with modern JavaScript libraries like Angular.js. Proficient with .Net server side API development, MicroService Architecture and Spring Framework.
- Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
- Overall knowledge of the Software Development Life Cycle. Ability to work in a large Agile/Scrum environment, collaborating with Agile teams, and actively participating in Agile ceremonies.
- Java/J2EE and .Net application development experience leading development teams with coding, testing, creating and maintaining of existing high quality applications. Join a team with an understanding of the importance of end to end software development in a large scale Agile environment. Lead, coach and mentor intermediate and junior level developers on application and enterprise technologies.
- Knowledgeable in developing RESTful micro services with technical stack such as Kafka, and Hadoop.
- Experience with cloud technologies such as AWS or Google Cloud, with experience designing cloud ready solutions, including creating artifacts, models, and strategy presentations
- Solid understanding of agile methodologies such as CI/CD with Jenkins and BitBucket, Applicant Resiliency, and Security, TDD, DevOps automation and code quality tools (i.e. static/dynamic code scanning).
- Demonstrated knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
Preferred qualifications, capabilities, and skills
- Familiarity with modern front-end technologies
- Exposure to cloud technologies
- Cloud certification such as AWS is preferred