We are seeking a highly motivated and enthusiastic Intermediate Software Developer to join our growing engineering team. This role is ideal for a recent individual with 3-5 years of experience who is eager to learn and grow within a fast-paced environment. You will work on exciting projects involving large-scale data processing, analytics, and software development, leveraging technologies like Java, Apache Spark, Python, and Apache Iceberg. This position offers a unique opportunity to gain hands-on experience with cutting-edge data lake technologies and contribute to critical data infrastructure.
Responsibilities:
- Collaborate with senior developers and data engineers to design, develop, test, and deploy scalable data processing pipelines and applications.
- Write clean, efficient, and well-documented code in Java and Python for various data ingestion, transformation, and analysis tasks.
- Utilize Apache Spark for distributed data processing, focusing on performance optimization and resource management.
- Work with Apache Iceberg tables for managing large, evolving datasets in our data lake, ensuring data consistency and reliability.
- Assist in troubleshooting, debugging, and resolving issues in existing data pipelines and applications.
- Participate in code reviews, contributing to a high standard of code quality and best practices.
- Learn and adapt to new technologies and methodologies as the project requirements evolve.
- Contribute to the documentation of technical designs, processes, and operational procedures.
Qualifications:
- 2-5 years of relevant experience
- Bachelor's degree in Computer Science, Software Engineering, Data Science, or a related technical field.
- Strong foundational knowledge of object-oriented programming principles.
- Proficiency in at least one of the following programming languages: Java or Python.
- Basic understanding of data structures, algorithms, and software development lifecycles.
- Familiarity with version control systems (e.g., Git).
- Eagerness to learn and a strong passion for software development and data technologies.
- Excellent problem-solving skills and attention to detail.
- Good communication and teamwork abilities.
Education:
- Bachelor’s degree/University degree or equivalent experience
This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required.
- Familiarity with distributed computing concepts.
- Basic understanding of Apache Spark or experience with data processing frameworks.
- Exposure to cloud platforms (AWS, Azure, GCP).
- Knowledge of SQL and database concepts.
- Any experience or coursework related to data lakes, data warehousing, or Apache Iceberg.
------------------------------------------------------
Job Family Group:
Technology------------------------------------------------------
Job Family:
Applications Development------------------------------------------------------
Time Type:
Full time------------------------------------------------------
Most Relevant Skills
Please see the requirements listed above.------------------------------------------------------
Other Relevant Skills
For complementary skills, please see above and/or contact the recruiter.------------------------------------------------------
Citi is an equal opportunity employer, and qualified candidates will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, status as a protected veteran, or any other characteristic protected by law.
If you are a person with a disability and need a reasonable accommodation to use our search tools and/or apply for a career opportunity review Accessibility at Citi.
View Citi’s EEO Policy Statement and the Know Your Rights poster.