Senior Software Engineer III

Pacific Northwest National LaboratoryRichland, WA
16dOnsite

About The Position

At PNNL, our core capabilities are divided among major departments that we refer to as Directorates within the Lab, focused on a specific area of scientific research or other function, with its own leadership team and dedicated budget. Our Science & Technology directorates include National Security, Earth and Biological Sciences, Physical and Computational Sciences, and Energy and Environment. In addition, we have an Environmental Molecular Sciences Laboratory, a Department of Energy, Office of Science user facility housed on the PNNL campus. The National Security Directorate (NSD) drives science-based, mission-focused solutions to take on complex, real-world threats to our nation and the world. The AI and Data Analytics Division, part of NSD, combines profound domain expertise and creative integration of advanced hardware and software to deliver computational solutions that address complex data and analytic challenges. Working in multidisciplinary teams, we connect foundational research to engineering to operations, providing the tools to innovate quickly and field results faster. Our strengths are integrated across the data analytics lifecycle, from data acquisition and management to analysis and decision support. We are seeking a Senior Software Engineer to join PNNL's advanced AI engineering initiatives, contributing to next-generation systems spanning agentic AI platforms, large-scale data orchestration, and real-time intelligence processing. In this role, you'll apply your expertise in scalable system design and AI/ML engineering to build mission-critical capabilities while developing your technical leadership and establishing yourself as a key contributor to our engineering community. Who You Are You're an accomplished engineer with strong foundations in scalable system design, AI/ML development, and production software engineering. You're ready to take on increasing technical responsibility, leading components of complex systems while mentoring junior team members. You excel at translating technical requirements into working solutions, selecting appropriate approaches for challenging problems, and contributing meaningfully to technical direction and project success. What You'll Build AI Systems & Platforms Develop and deploy agentic AI systems with reasoning and decision-making capabilities Build components of LLM orchestration frameworks using LangChain, LlamaIndex, and emerging platforms Contribute to MLOps platforms including experiment tracking, model versioning, and deployment pipelines Create developer tooling, utilities, and interfaces for AI-native frameworks Integrate multi-modal data sources into cohesive processing pipelines Scalable Infrastructure & Data Systems Develop microservices within distributed architectures handling high-throughput workloads Build components of real-time streaming platforms and event-driven systems Implement data pipelines for large-scale ETL, data processing, and analytics Deploy containerized applications using Kubernetes and support CI/CD pipelines Contribute to systems deployed in secure and edge environments Mission-Critical Production Systems Deploy AI systems with appropriate monitoring, logging, and observability Ensure code quality, security best practices, and compliance standards Build geospatial processing, time-series, and data fusion capabilities Support system performance optimization and troubleshooting

Requirements

  • Demonstrated proficiency in Python and working knowledge of at least one additional language (Java, C#/.NET, Go, C++, Rust) with deep knowledge of software engineering principles including object-oriented design, design patterns, data structures, algorithms, and clean code practices
  • Proficiency with version control systems (Git), collaborative development workflows, and strong foundation in automated testing methodologies including unit testing, integration testing, end-to-end testing, and test-driven development (TDD)
  • Understanding of CI/CD pipelines and DevOps practices with ability to contribute to build automation, deployment processes, and release management while writing maintainable, well-documented, and performant code
  • Ability to lead technical discussions around system design, microservice architecture, and distributed computing patterns while consistently leveraging AI assist tools (e.g., GitHub Copilot, Claude, Cursor) to accelerate development, generate test cases, and enhance problem-solving throughout the software development lifecycle
  • Knowledge of machine learning fundamentals including supervised/unsupervised learning, model evaluation metrics, and common algorithms
  • Understanding of the machine learning lifecycle including data preparation, model training, hyperparameter tuning, evaluation, deployment, and monitoring
  • Knowledge of ML model serving architectures and ability to integrate models into production applications via APIs or batch processing
  • Understanding of ML best practices including experiment tracking, model versioning, A/B testing, and model performance monitoring
  • Demonstrated experience building and deploying applications on cloud platforms (AWS, Azure, or GCP) with proficiency in containerization (Docker) and container orchestration (Kubernetes) for scalable application deployment (multi-cloud experience highly valued)
  • Ability to design and implement event-driven architectures using message queues, pub/sub systems, and serverless functions (Lambda, Azure Functions, Cloud Functions) with understanding of asynchronous processing patterns
  • Strong understanding of API design including RESTful principles (resource modeling, authentication, versioning) and alternative paradigms (GraphQL, gRPC) with ability to select appropriate protocols for different use cases
  • Experience designing microservice architectures with understanding of service boundaries, inter-service communication, and distributed system challenges, plus knowledge of both relational (PostgreSQL, MySQL) and NoSQL databases (MongoDB, DynamoDB, Cassandra) to select appropriate storage solutions
  • Understanding of data pipeline architectures and ETL/ELT patterns using cloud-native services (AWS Glue, Lambda, Step Functions, Azure Data Factory) with knowledge of batch vs. streaming processing trade-offs
  • Knowledge of cloud-based data storage systems and their use cases (S3, Redshift, Delta Lake, BigQuery, PostgreSQL, MongoDB, OpenSearch, Snowflake) with understanding of data modeling principles including schema design, normalization/denormalization trade-offs, and data quality validation
  • Understanding of distributed data processing frameworks (Spark/Databricks, Kafka, Flink, Ray) and streaming architectures with ability to build applications that integrate with these platforms for parallel and real-time processing
  • Ability to design scalable systems handling large-scale data workloads with appropriate partitioning, indexing, and query optimization strategies while selecting optimal data formats (Parquet, Avro, JSON, Protocol Buffers) for different scenarios
  • Ability to collaborate effectively within cross-functional teams including product managers, data scientists, DevOps engineers, and other stakeholders while participating actively in Agile ceremonies, technical planning, and sprint activities
  • Strong communication skills to articulate complex technical concepts clearly through documentation, architecture diagrams, code reviews, and presentations with focus on knowledge sharing and maintaining team standards
  • Demonstrated capacity to mentor junior engineers through pair programming, constructive code reviews, and technical guidance while fostering a culture of continuous learning and improvement
  • Ability to balance technical excellence with pragmatic delivery, making appropriate trade-offs between ideal solutions and business value while demonstrating adaptability to rapidly learn new technologies and domains
  • PhD and 1 year of software engineering experience; OR MS/MA and 3 years of software engineering experience; OR BS/BA and 5 years of software engineering experience; OR AA and 14 years of software engineering experience in designing, architecting, programming, deploying, and automating software solutions in support of scientific research or consumer digital product development; OR HS/GED and 16 years of software engineering experience in designing, architecting, programming, deploying, and automating software solutions in support of scientific research or consumer digital product development.
  • U.S. Citizenship
  • Applicants selected will be subject to a Federal background investigation and must meet eligibility requirements for access to classified matter in accordance with 10 CFR 710, Appendix B.
  • All Security Clearance positions are Testing Designated Positions, which means that the applicant selected for hire is subject to pre-employment drug testing, and post-employment random drug testing. In addition, applicants must be able to demonstrate non-use of illegal drugs, including marijuana, for the 12 consecutive months preceding completion of the requisite Questionnaire for National Security Positions (QNSP).
  • Applicants will be considered ineligible for security clearance processing by the U.S. Department of Energy if non-use of illegal drugs, including marijuana, for 12 months cannot be demonstrated.

Nice To Haves

  • Degree in computer science, software engineering, or related field
  • Expertise in Python and proficiency in at least one other language (Java, C#/.NET, C++, Go, Rust)
  • Ability to contribute to technical direction and independently structure complex problems into actionable work, in collaboration with senior engineers and cross-functional teams
  • Experience designing or implementing components of large-scale ETL pipelines and analytics systems (petabyte-scale experience valued)
  • Experience contributing to Cloud-native system design: API and microservice architecture, DevOps, containerization and orchestration (Docker/Kubernetes), infrastructure as code, and full-stack observability (logging, metrics, tracing)
  • Active technical community engagement demonstrated through meaningful open-source contributions, maintained GitHub repositories, technical blog posts or presentations, conference participation, mentoring activities, or self-initiated projects exploring emerging technologies that showcase continuous learning and passion for the engineering craft

Responsibilities

  • Lead technical components of projects and tasks
  • Mentor junior staff and contribute to team knowledge sharing
  • Participate in design discussions and contribute to architectural decisions
  • Support proposal development with technical content and scoping
  • Build effective collaborations across teams and S&E domains

Benefits

  • Employees and their families are offered medical insurance, dental insurance, vision insurance, robust telehealth care options, several mental health benefits, free wellness coaching, health savings account, flexible spending accounts, basic life insurance, disability insurance, employee assistance program, business travel insurance, tuition assistance, relocation, backup childcare, legal benefits, supplemental parental bonding leave, surrogacy and adoption assistance, and fertility support.
  • Employees are automatically enrolled in our company-funded pension plan and may enroll in our 401 (k) savings plan with company match.
  • Employees may accrue up to 120 vacation hours per year and may receive ten paid holidays per year.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service