The Senior Developer works as a member of the Investment Technology Team to build solutions that support the investment process.
We are building an investment decision support application that assists researchers in evaluating companies based on socially responsible criteria. Portfolio Managers use this tool to aid in identifying companies which demonstrate positive impact in society through their business operations and overall activities, while producing competitive investment returns. The application will support analysis of a wide range of metrics around social, environmental, and governance activities within companies, and then to combine those metrics into models which assist in determining companies that balance both financial and non-financial needs, and demonstrate a commitment to society.
While this role is principally a UI developer role, candidates with broader experience may be able to participate in other areas that this project uses, including building restful APIs, SQL queries.
- This is a very hands on role. Design and develop software systems, both independently and collaboratively with the rest of the team, ensuring the resulting code is well structured, tested, extensible, and maintainable.
- Writing production-ready and testable code with fluency in modern front-end java script frameworks.
- Ability to enhance or troubleshoot existing code.
- Architecting applications leveraging software design patterns and object oriented design principles.
- Look for either opportunities for reuse as part of solutions – reuse of existing approaches and tools, or opportunities in this project to build components that can be a foundation for future work.
- Collaborate with the business users in order to understand and refine requirements, and incorporate feedback into the development process.
- Manage technical debt, placing a high value on refactoring, collective code ownership, and improving the design of existing code.
- We use many technologies to solve problems, but considers the following technologies to be core to or custom development:
- SQL Server 2016, C#, Angular 6.x, Restful Web Services, AWS Cloud
- Should have solid UI/UX design skills with HTML and CSS and a good understanding of browser behaviors.
- Ability to design interactive and responsive web applications that can run on different browsers and devices.
- Experience in working with third party libraries such as AG-Grid, material UI and bootstrap.
- Experience in building or using embedded charts using tableau or any framework such as D3.js is a plus.
- Should have experience in any backend technologies (.Net Core, Java, Nodjs) with a solid track record in designing, building, and deploying applications to production environments. Ideally, that reflects depth in creating well designed applications (layering, separation of concerns, SOLID design principles). Should have experience with building significant computational / logic oriented libraries, as well as creating interface layers using REST Web Services and providing access to backend data stores.
- Solid experience in relational database design, including data modeling and normalization. Should have experience with SQL Server as a database, programming experience using Transact-SQL, and knowledge of best practices for identifying and addressing performance considerations (indexing, efficient usage of SQL, etc). Exposure and familiarity with Hadoop and/or Data Virtualization are not required, but are differentiators.
- Experience in working with any cloud provider specially AWS is a big plus.
- Experience in working with micro services and server less architecture is also a big plus.
- Ability and desire to collaborate, sketch and discuss designs at a whiteboard, engage in pair programming, ask for help before you need it, and openly share code, designs, and ideas.
- Ability to coach and mentor junior developers.
- Experience with the following techniques, libraries, and tools are helpful:
Agile Methodologies – any of Scrum, Kanban, and/or Lean
Test driven development (TDD)
- Overall 5+ years of software development experience focused on web based application and web development
- Depending on role, one or more of the following
5+ years with web UI development – ideally experience with Angular 2+, React, or similar.
4+ years of experience programming with C# or similar
4+ years of experience with SQL server
- Excellent communication and organizational skills and ability to communicate with non-technical investment professionals
- Bachelor’s degree in Computer Science strongly preferred