[ref. y36917520] Senior Scala/Spark Software Developer
Overview:
PDF was recognized by Forbes as one of America's Best Small Employers for 2023. This ranking highlights only 300 companies out of 10,000+ that were considered in the Forbes nationwide analysis and PDF solutions ranked 55! The results are based on an employee satisfaction survey as well as a social listening analysis of employee feedback conducted by a Forbes research firm.
JOB OBJECTIVES:
Collect requirements, participate in design reviews and build infrastructure to facilitate the development of real time software solutions for our customers, both for on-prem and in the cloud deployments. These real time solutions are used across the world by leading semiconductor manufacturers, fabless design houses, as well as assembly and test subcontractors.This role could have a huge impact on both the quality of our products used globally, as well as boosting the efficiency of our development/deployment pipeline to deliver solutions faster to our customers.
Responsibilities:
ESSENTIAL DUTIES AND RESPONSIBILITIES:
- Understanding and review of requirements, translation into possible software designs, as well as contributing to design reviews.
- Develop web-based applications and microservices using technologies such as .NET Core and Scala, demonstrating proficiency in both functional and object-oriented programming.
- Collaborating with application and product management teams on understanding future use cases of this real time infrastructure, incorporation of these changing requirements into updated designs.
- Deployment, maintenance, and identification of areas of improvement in deployed infrastructure.
- Definition of KPI and benchmarking of deployed infrastructure, publishing of KPI results to user base of infrastructure.
- Promote code quality by adhering to best practices, conducting code reviews, and ensuring adherence to coding standards.
- Develop and maintain comprehensive test to ensure software reliability and performance.
- Grow by improving skills and learning new ones, develop strengths, talents, and expertise.
- Mentor and lead junior developers, fostering their growth through guidance and support.
REQUIRED KNOWLEDGE, SKILLS, AND ABILITIES:
- Minimum eight years of experience with Scala programming.
- Experience with IT activities like server configuration.
- Strong knowledge of databases, including SQL (e.g., Oracle, PostgreSQL) and NoSQL (e.g., Cassandra).
- Experience with big data and distributed systems like Apache Spark and Apache Ignite.
- Experience with containerization and orchestration tools like Docker and Kubernetes.
- Experience with message brokers such as RabbitMQ.
- Familiarity with developing and integrating workflows using tools like Elsa 3.
- Familiarity with GitHub for source control and Jenkins CI/CD pipelines.
- Ability to work in both a collaborative team-oriented environment and remote-independent environment.
- Self-motivated and great organizational skills.
- Fast learner and ability to learn new technologies and skills quickly.
- Excellent written and verbal communications skills.
- Able to read and write in English at a professional level.
Qualifications:
PREFERRED KNOWLEDGE, SKILLS AND ABILITIES:
- Experience in semiconductor industry, understanding of wafer flows and basic manufacturing steps.
- Experience with SEMI standards.
EDUCATION AND EXPERIENCE:
- Bachelor of Science in Computer Science, related engineering degree, or proven industry experience.
- Five years of experience developing software or components for Windows and Linux operating systems, ideally in real time systems, in a team development environment.
Pay Range: CAD $100,000.00 - CAD $130,000.00 /Yr.