What are the responsibilities and job description for the Software Engineer position at AllianceIT Inc?
Job Title: Senior Core Algorithms Engineer
Location: [Cupertino, CA) onsite
Job Type: [Full-time]
Key Responsibilities:
Design, implement, and optimize core algorithms that support our [products/services].
Work on a variety of algorithmic challenges, including optimization problems, machine learning models, data structures, and computational efficiency.
Analyze and improve algorithmic performance in terms of speed, memory usage, and scalability.
Collaborate with data science and engineering teams to ensure seamless integration of algorithms into production systems.
Conduct in-depth research on new algorithms and techniques to improve system efficiency and solve complex problems.
Continuously refactor and optimize code to enhance algorithmic performance.
Write and maintain detailed documentation for algorithms, models, and codebases.
Lead the troubleshooting and debugging of algorithmic issues across our systems.
Mentor and provide technical guidance to junior engineers and team members.
Stay updated with the latest research in algorithm design, machine learning, and computational theory.
Qualifications:
Bachelor's, Master's, or Ph.D. in Computer Science, Engineering, Mathematics, or a related field.
Proven experience (5 years) in designing, developing, and optimizing core algorithms in a production environment.
Deep knowledge of algorithms and data structures, including but not limited to sorting, searching, graph algorithms, dynamic programming, etc.
Strong background in mathematical modeling, optimization techniques, and complexity analysis.
Expertise in one or more programming languages such as C , Python, Java, or similar.
Experience with performance profiling and optimization for high-performance computing environments.
Familiarity with machine learning algorithms, AI, or data-driven algorithms is a plus.
Excellent problem-solving skills and the ability to think critically about complex challenges.
Strong communication skills and ability to work in a collaborative, cross-functional environment.
Preferred Qualifications:
Experience with large-scale distributed systems and algorithms for big data processing.
Familiarity with deep learning algorithms or other advanced AI techniques.
Experience in cloud computing platforms (AWS, Google Cloud, Azure) or HPC systems.
Familiarity with parallel computing or GPU programming is a plus.