The Senior Software Engineer is responsible for understanding analytics processes and leading the design and development of IT solutions to provide the internal and external customers concrete value. This role will participate in the Agile process through domain driven design, user story mapping, and lean process analysis to help develop epics, features, and stories that can be effectively implemented and rolled out for production use. There will also be more ad-hoc and “one-off” projects that require rapid development and a flexible approach while maintaining appropriate degrees of quality and rigor. The most significant responsibility for this role will be developing reference implementation patterns and working with our domain experts and Data Engineers on developing, optimizing, and deploying algorithms, machine learning, and analytics on our platforms.
- Actively participate in design/architectural discussions, grooming user stories, sprint demos, and daily Scrums, to help establish Domain and Behavior-Driven Development (DDD/BDD) approaches and Information Architecture
- Solve challenging problems by refactoring existing processes / solutions and designing, building, and tuning new ones – specifically targeting our domain specific platform (AWS, Databricks/Spark, Streaming, ETL, ML)
- Operate in a fast-paced, distributed, and agile team that ships production code every two weeks.
- Support analysts, and other team members by driving clarity and actionable objectives through ubiquitous language, process definition, information architecture and measurable outcomes
- Take responsibility for department success through mentoring, coaching, and advising other team members
- Other duties as apparent or assigned.
- Master’s degree in a related area required, preferably in Computer Science, Engineering, Mathematics, Statistics, or Information Systems; or an equivalent combination of education and experience from which comparable knowledge and abilities can be acquired.
- 5+ years of software development focused on technology solutions for analytics and research.
- Expertise developing applications, algorithms, and data models based on user story maps, user requirements, use-cases, lean processes, and business cases.
- Experience working across diverse matrixed team structure where influence without authority is crucial.
- Experience with “Big Data” and “Cloud Computing” solutions required (Databricks/Spark/AWS).
- Experience working in an Agile development environment.
- Educational field domain knowledge and experience a plus.
- Experience with algorithm development and optimization across languages and associated industry standards.
- Ability to work as part of a Scrum team, following SAFe Agile practices; using Jira, BitBucket (GitHub), and Jenkins.
- Familiarity with Domain Driven Design, Behavior Driven Design, and / or Test-Driven Development
- Big Data: Spark, Databricks, Hortonworks, Hadoop.
- Database: Oracle/PostgreSQL/MySQL/MS-SQL, Mongo, Cassandra, Dynamo, ElasticSearch, Titan, Neo4J.
- Data: XML / XLS, JSON / JSON-Schema / JSON-LD, CSV, XLSX.
- Asynchronous workflows and streaming; Kafka, RabbitMQ, SNS/SQS, Kinesis.
- Web Services and ReSTful API design and implementation.
- Experience with User Story Mapping, Use-Cases, Process Mapping, UML, and requirements documentation.
- Machine Learning, Natural Language Processing, Deep Learning.
- Lean and / or Six Sigma training and experience (certification a plus).
- Strong verbal and written communication and collaboration skills.
- Ability to develop innovative solutions to technical issues; a drive to learn and master new technologies and techniques.
- Results-oriented, highly motivated, self-starter with strong organizational and time management skills.
- Able to perform tasks in a fast-paced working environment and meet tight deadlines.
- Ability to work collaboratively across the company with colleagues and staff to create a high-quality, results-driven team-oriented environment.
- Demonstrated ability to support, mentor, coach, and advise other team members.
- Proficient in MS Office, Google Applications, modern business tools, communication tools, mobile tools, presentation tools for virtual teams (i.e., Google Hangout, Zoom, Skype)
- Willingness and ability to work flexible hours and travel (up to 25%); will include some overnight travel.
- LearningMate has offices in India and USA and global customers. Coordination with the teams primarily in India would demand early morning or late evening calls/meetings.