div:has([data-free-thinking-preview-answer=true])+:is(.text-message,.relative:has(>.text-message))]:-mt-2 grow">
Job Summary:
The Senior Software Engineer develops software products and drives improvements to overall product quality across the software development lifecycle, providing technical leadership within the team. This role involves designing and maintaining applications that ingest multiple data sources and surface insights through correlation and analysis. The position requires independent decision-making, creativity, strong software engineering fundamentals, and the ability to contribute to team-level goals while working across cloud, Big Data, data engineering, and application development technologies.
Key Responsibilities:
• Design, develop, and maintain applications that ingest multiple data sources and surface insights through correlation and analysis.
• Ensure code quality, performance optimization, scalability, and adherence to software development best practices.
• Provide technical leadership and mentorship to junior engineers.
• Guide the team in the effective and responsible use of AI-assisted development tools.
• Participate in architecture discussions, contribute to technical strategy, and define technical solutions and operational processes that improve efficiency.
• Identify and resolve technical risks and cross-team dependencies proactively to support successful project execution.
• Support production systems and troubleshoot complex technical issues.
• Simplify application code and infrastructure to reduce maintenance and migration costs.
• Apply computer science fundamentals, including algorithm design, problem solving, complexity analysis, and data structures, to solve complex business problems.
• Apply strong Big Data engineering experience to design and implement scalable solutions.
• Use AI-assisted development tools effectively while reviewing generated output for correctness, security, quality, and maintainability.
• Build productive relationships with internal and external stakeholders to remove barriers and align technical priorities.
• Collaborate effectively with cross-functional teams to support organizational objectives.
Required Qualifications:
• Bachelor's degree in Computer Science, Information Systems, or a related discipline with at least 7 years of related experience, or an equivalent combination of education and work experience.
• Strong proficiency in Java, Python, and/or Node.js.
• Strong object-oriented development experience.
• Strong experience designing and developing RESTful APIs and microservices architectures.
• Strong experience with Big Data processing frameworks, including Apache Spark, EMR, Presto, Trino, and Athena.
• Experience designing and developing ETL/ELT pipelines for large-scale data ingestion, transformation, and loading.
• Experience with both batch and streaming data processing.
• Strong understanding of data lake and data warehouse patterns, including partitioning, schema management, and Parquet, ORC, and Avro file formats.
• Experience with SQL performance tuning for analytical workloads.
• Experience with workflow orchestration and scheduling using AWS Glue, Step Functions, Airflow, or comparable technologies.
• Experience implementing data quality, validation, and pipeline monitoring.
• Strong experience with relational databases such as PostgreSQL, MySQL, and Aurora.
• Experience with NoSQL databases such as DynamoDB, MongoDB, and Cassandra.
• Strong experience with AWS services including EC2, S3, Lambda, RDS, ECS, and API Gateway.
• Experience with CloudWatch, CloudTrail, IAM, and VPC networking.
• Experience with Infrastructure as Code using Terraform, CloudFormation, or comparable technologies.
• Experience with CI/CD pipelines, test automation, and unit testing.
• Strong understanding of software security best practices.
• Experience with system design, cloud technologies, data storage technologies, performance tuning, DevOps, and software optimization.
Preferred Qualifications:
• Experience with QuickSight for dashboards and data visualization.
• Experience developing frontend applications using React or Angular.
• Experience with GitLab CI/CD.
• Experience with AI-assisted development tools such as Amazon Q or similar code assistants.
• Experience validating AI-generated code for correctness, quality, and security and applying appropriate human review.