Postuler maintenant

Introduction

IBM Apptio is seeking a talented Software Engineer 1 to join our Data Platform team, a critical team that powers the data analytics and processing for Apptio's cost management solutions. The Compute Platform serves as the unified data warehouse layer, processing billions of records daily and supporting multiple product teams.

Our team builds and maintains high-performance, scalable services that integrate with Snowflake, handling massive datasets for enterprise customers. You'll work on cutting-edge distributed systems, data processing pipelines, and automation frameworks that enable real-time analytics and reporting.

Your role and responsibilities

Your Role and Responsibilities

As a Software Engineer 1 on the Data Team, you will:

  • Develop and maintain microservices in Scala and Java

  • Build and optimize data pipelines processing terabytes of data daily using Spark

  • Write clean, well-tested code and participate in code reviews to ensure quality

  • Collaborate with senior engineers and product teams to deliver features and resolve production issues

  • Participate in Agile ceremonies and the on-call rotation for service reliability

Required technical and professional expertise

Education and Experience

  • Bachelor's degree in Computer Science, Software Engineering, or related technical field

  • 1-2 years of professional software development experience

  • Strong foundation in computer science fundamentals including data structures, algorithms, and object-oriented programming

Programming Skills

  • Proficiency in at least one JVM language (Java, Scala, or Kotlin)

  • Experience with version control systems (Git) and collaborative development workflows

  • Ability to write clean, maintainable code with proper error handling and logging

Technical Knowledge

  • Understanding of RESTful APIs

  • Basic knowledge of SQL and relational databases

  • Familiarity with build tools (Maven, Gradle) and dependency management

  • Understanding of software testing principles and test-driven development

  • Basic understanding of cloud computing concepts (AWS, Azure, or GCP)

Soft Skills

  • Strong problem-solving and analytical thinking abilities

  • Excellent communication skills, both written and verbal

  • Ability to work effectively in a team environment

  • Eagerness to learn new technologies and take on challenges

  • Self-motivated with good time management skills

  • Comfortable asking questions and seeking help when needed

Professional Attributes

  • Attention to detail and commitment to code quality

  • Ability to handle multiple tasks and prioritize effectively

  • Willingness to participate in on-call rotation and handle production issues

  • Strong work ethic and reliability

  • Adaptability to changing requirements and technologies

Preferred technical and professional experience

Advanced Programming Experience

  • Professional experience with Scala programming language

  • Knowledge of concurrent and asynchronous programming patterns

Data Engineering

  • Experience with data warehouses (Snowflake, BigQuery, Redshift)

  • Knowledge of data processing frameworks (Apache Spark, Hadoop)

  • Understanding of columnar storage formats (Parquet, IceBerg)

  • Experience with ETL/ELT pipelines and data transformation workflows

  • Familiarity with data modeling and schema design

Cloud and Infrastructure

  • Hands-on experience with AWS services (S3, RDS, SQS, Lambda, Secrets Manager)

  • Experience with Infrastructure-as-Code tools (Terraform, CloudFormation)

  • Knowledge of containerization (Docker) and orchestration (Kubernetes)

  • Experience with CI/CD pipelines (GitHub Actions, Jenkins, ArgoCD)

  • Understanding of monitoring and observability tools (DataDog, Prometheus, Grafana)

Database and Storage

  • Experience with PostgreSQL or other relational databases

  • Knowledge of database optimization and query performance tuning

Development Practices

  • Experience with test frameworks (ScalaTest, JUnit, Mockito)

  • Knowledge of design patterns and software architecture principles

  • Understanding of microservices architecture and distributed systems

  • Experience with API design and documentation (OpenAPI/Swagger)

  • Familiarity with performance profiling and optimization techniques

Tools and Technologies

  • Experience with IntelliJ IDEA or similar IDEs

  • Knowledge of Linux/Unix command line and shell scripting

  • Familiarity with Postman or similar API testing tools

IBM is committed to creating a diverse environment and is proud to be an equal-opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, gender, gender identity or expression, sexual orientation, national origin, caste, genetics, pregnancy, disability, neurodivergence, age, veteran status, or other characteristics. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.

Postuler maintenant

Plus d'emplois