Senior Software Architect
Eclipse Mining Technologies, LLC
Tucson, AZ, USA
6/14/2022
Technology
Full Time
Job Description
Job DescriptionSalary:
This is a full-time position to be worked out of our Tucson, Arizona office.
In this position you will utilize your ample experience to help design the high-level structure, provide strategic direction and technical standards of our data platform. The ideal candidate will possess a deep expertise in system design, high performance computing, distributed systems, and a high level of proficiency in C and C++. You will work closely with the Director of Product Development to bring the companys innovative vision to life and with the development team to implement and maintain that vision.
Responsibilities
- Ensure scalability, performance, and security.
- Implement efficient solutions for mathematical modeling and simulation.
- Evaluate and recommend tools, technologies and processes that align with the architecture, business plans and long-term strategy to ensure the highest quality product platform.
- Perform analysis, estimate work, design and update software architecture.
- Guide development team to ensure production and maintenance of high quality, tested and efficient code, following industry standards.
- Provide guidance on compatibility and integration to ensure an integrated architecture across disparate products and technologies.
- Communicate with stakeholders and engineers to ensure technology stack consistency across different teams and requirements are met.
- Develop proof of concepts for new, innovative solutions.
- Other duties as required
Requirements
- Bachelors degree in Computer Science, Engineering, Math, or equivalent combination of education and related experience
- At least 8-10 years of experience in C/C++
- Extensive knowledge of data structures and algorithms
- Experience writing high performance code (SIMD, cache conscious design)
- Experience writing large-scale multithreaded systems (lockless programming, paradigms, best practices)
- Experience working with large data sources (SQL, Parquet, streaming, others)
- Experience designing and implementing large software systems
- Experience designing APIs for internal and external use
- Knowledge of mathematics (statistics, geometry, linear algebra, operations research) a plus
- Knowledge of machine learning (feature engineering, modeling techniques) a plus
- Knowledge of simulation (Discrete event simulation, monte carlo methods, distributions) a plus
- Knowledge of networking code (sockets, encryption, services, use libraries, best practices) a plus
- Experience designing and implementing distributed systems (CAP Theorem, high availability, orchestration) a plus
- Skill in designing UI/UX a plus