Senior Java Developer
About the Role
We are looking for a Software Engineer with senior to advanced-level skills in Java, Python, AWS Cloud, and full-stack development. This role will primarily focus on full-stack development and delivery, though front-end development experience is a plus. Responsibilities include contributing to our architecture and technology roadmap, mentoring junior developers, and collaborating closely with cross functional teams.
Key Activities
- Apply software engineering principles to design, implement, configure, and optimize solutions for applications, databases, test automation tools, and Commercial Off the Shelf (COTS) products.
- Partner with product owners and customers to develop innovative solutions that meet business goals.
- Review and analyze business and technical requirements and implement technical solutions to fulfill those requirements.
- Strong problem solving, oral and written communication skills, including experience with executive presentations.
- In-depth knowledge of current technology, industry standards and frameworks, information management & emerging technology trends and industry developments.
- Work with a multidisciplinary team of full-stack developers.
- Create unit tests as part of Continuous Development practices.
- Conduct peer code reviews, provide recommendations, and collaborate with peers to enhance software coding practices.
- Fix bugs and support QA, UAT, and Production phases of releases.
- Foster and apply an agile mindset enabling high-performing teams.
- Provide coaching, education, and advocate for development best practices.
- Offer support, troubleshooting, root cause analysis, incident management, and service request management for supported products and environments.
- Perform other duties as assigned.
Basic Qualifications
- Typically requires a minimum of 6 years of relevant experience.
- Bachelor’s degree specializing in STEM (Science, Technology, Engineering, Mathematics) or a closely related field from an accredited institution, or equivalent combination of directly related education and experience.
- Senior understanding of subject matter with in-depth and/or breadth of knowledge in the discipline.
- Proficiency with Git (merging, conflicts, cherry picking), Java, AWS, Python, and SQL.
- Subject matter expertise with Cloud and Java coding.
- Ability to work independently with limited supervision, coach, delegate, and review work of less experienced staff, and serve as a knowledge resource and mentor.
- Work efficiently under tight deadlines and adapt quickly to change.
- Exceptional attention to detail and a commitment to delivering high-quality work.
- Experience creating modern CI/CD pipelines using DevOps tooling (i.e., Gitlab).
- Knowledge of AWS services and security best practices.
- Experience with cloud networking across numerous accounts, environments, and vendors, and zero trust principles.
- Proficiency with Terraform and CDK for deploying AWS cloud services and infrastructure.
- Understanding of API infrastructure and development, and associated tools and best practices.
Preferred Qualifications
- Advanced experience with multiple programming languages including Java, JavaScript, and Python.
- Advanced knowledge of cloud-based platforms like AWS and the ability to learn new platforms.
- Strong experience with Apache Spark for large-scale data processing.
- Familiarity with optimizing AWS Glue jobs for performance and cost-efficiency.
- Proficiency with PySpark including DataFrames, Spark SQL, and Spark Streaming.
- Experience with orchestration tools such as Apache Airflow.
- Ability to quickly become proficient in any new languages and/or development related tools.
- Experience with application observability and monitoring across disparate tools and services.