Position Summary: We are seeking a highly skilled and experienced Senior Software Engineer to join our talented engineering team in Boston. In this role, you will leverage your expertise in Python and the scientific stack (NumPy, Pandas, SciPy) to design, develop, and maintain robust software solutions that support our asset management operations. You will work closely with cross-functional teams to deliver high-quality, scalable systems that enhance our technology infrastructure and drive our business forward.
Key Responsibilities:
- Design, develop, test, and deploy scalable and efficient software solutions using Python and the scientific stack (NumPy, Pandas, SciPy).
- Collaborate with product managers, data scientists, and other engineers to gather and refine requirements, ensuring technical feasibility and alignment with business goals.
- Implement best practices for code management, version control, and collaboration using Git.
- Optimize and maintain existing software systems, identifying and addressing performance bottlenecks, bugs, and security vulnerabilities.
- Utilize the scientific stack to perform data analysis, modeling, and quantitative research to support asset management strategies.
- Participate in code reviews, providing constructive feedback and mentoring junior engineers to foster a culture of continuous improvement.
- Develop and maintain comprehensive documentation for software systems, processes, and workflows.
- Stay up-to-date with emerging technologies and industry trends, recommending and implementing innovative solutions to improve our technology stack.
- Ensure adherence to software development standards and methodologies, including Agile practices.
Qualifications:
- Bachelor's degree in Computer Science, Engineering, or a related field; advanced degree preferred.
- Minimum of 5 years of professional software engineering experience, with a strong focus on Python development.
- Proficiency in the Python scientific stack (NumPy, Pandas, SciPy) for data analysis and modeling.
- Deep understanding of Linux operating systems, including scripting and system administration tasks.
- Experience with version control systems, particularly Git.
- Familiarity with relational databases (e.g., PostgreSQL, MySQL) and NoSQL databases (e.g., MongoDB).
- Strong problem-solving skills and the ability to troubleshoot complex technical issues.
- Excellent communication and teamwork skills, with the ability to work effectively in a fast-paced, collaborative environment.
- Proven track record of delivering high-quality software solutions on time and within scope.
Preferred Qualifications:
- Experience in the finance or asset management industry.
- Knowledge of additional programming languages (e.g., Java, C++).
- Familiarity with cloud platforms (e.g., AWS, Azure) and containerization technologies (e.g., Docker, Kubernetes).
- Understanding of DevOps practices and tools (e.g., Jenkins, Terraform).
- Background in data analysis, machine learning, or quantitative modeling.