Full Stack Developer
Since 1851, MassMutual's commitment has always been to help people protect their families, support their communities, and help one another. This is why we want to inspire people to Live Mutual.? We are people helping people.
A career with us means you will work alongside exceptional people and be empowered to reach your professional and personal goals. ?Our employees are the foundation of what makes MassMutual a strong, stable and ethical business. ?We seek and value unique and varied perspectives and experiences because we believe we are stronger when all voices are heard.? We invite you to bring your bright, innovative ideas to MassMutual as we continue to help millions of Americans rely on each other.
Together, we are stronger
What great looks like in this role
Our ideal candidate is someone who enjoys designing, building and delivering complex systems. You understand the complexities of data and the value that mature data platforms can provide in accelerating the development of new data projects. You love architecting simple solutions to difficult problems. You are comfortable developing multi-tiered enterprise applications and look to leverage 3rd?party and open-source tools, as appropriate.?
You keep current with new technologies and are team orientated, mentoring and leading others as needed. You are a good communicator and passionate about your work.
Objectives of the role
- Design, develop and deliver scalable, robust and highly re-usable components using technologies such as Python, Java, AWS serverless (Lambda, Glue), Apache Spark, Apache Kafka and REST
- Participate in all aspects of development from design to delivery, acting as both developer and component lead?
- Interact closely with data users, including data engineers and data scientists to understand & refine requirements
- Develop code, unit tests and conducts code reviews
- Debug and troubleshoots problems in code and data pipelines
- Evaluate and recommend tools, technologies, processes and reference architectures?
- Identify areas for process improvement, automation and simplification (e.g. use of existing open source technologies)
- Collaborate closely with other developers and provide mentorship as appropriate
- Collaborate with other peer organizations (e.g., Business Analyst, Data Modeler, QA, technical support, etc.) to prevent and resolve technical issues
- Work in Agile development environment, attending daily stand-up meetings and delivering incremental improvements.
Basic Qualifications
- Strong experience using object-oriented and functional programming concepts; good grasp of design patterns and architectural principles
- Python: Expertise building complex backend systems using modern technologies
- Data: Good understanding of data & data processing tools (e.g. SQL, Spark, Kafka), of relational database technologies and of analytics databases (e.g. Redshift, Vertica, Snowflake)
- Git: Expertise with workflow steps, including branching, merging, rebasing, pull requests; working knowledge of reversion and alternative git flows
- CI/CD: Experience with CI/CD tools and processes and application deployment with Docker/Kubernetes
- Testing: experience writing unit, integration, integration and load tests
- Communication: Excellent communication, problem solving, organizational and analytical skills
- Willingness to work as a full stack developer
- Able to work independently and also to provide leadership to small teams of developers
Preferred Qualifications
- Development: 6+ years Python development, 6+ years Java development
- Cloud: Experience building with and deploying to cloud platforms such as AWS and leveraging serverless architectures (e.g. Lambda, Glue)
- Big Data & Streaming: 2+ years using big data and/or streaming technologies (e.g. Apache Spark, Apache Kafka, Apache Flink)
- Data Platforms: Good understanding of modern data platform design (e.g. ingestion, governance, transformation)
- APIs: Proficiency with one or more RESTful Frameworks (Java Spring boot and/or Python Django) and with creating API specifications (e.g. using Swagger)
- UI: Experience developing with 1 or more JavaScript frameworks (e.g. Angular, ReactJS, Vue)
- Documentation: proficiency writing wiki pages for technical documentation including troubleshooting, tutorials, and reference material