Title: Full Stack Software Engineer Department: CRD Development Reports To: Director Engineering Summary: This role will be part of strategic project to implement Portfolio Optimization capability for Charles Rivers Wealth clients Responsibilities:
Work under minimal supervision to analyze, design, develop, test, and debug medium to large software enhancements and solutions within Charles Rivers business and technical problem domains
Collaborate with Team Lead, Business Analysts and Product Managers to turn complex business requirements into working and sustainable software
Develop, test, debug, and implement software programs, applications and projects using Java, C#, SQL, JavaScript or other related software engineering languages
Write unit and automation tests to ensure a high quality end product
Conduct manual tests to ensure a high quality end product
Contribute to written design and API documentation
Actively participate in the agile software development process by adhering to the CRD Scrum methodology including attending all daily standups, sprint planning, backlog grooming, and retrospectives
Participate in cross-team group activities to complete assignments
Education: B.S. degree (or foreign education equivalent) in Computer Science, Engineering, Mathematics, and Physics or other technical course of study required. MS degree strongly preferred. Experience:
4+ years of progressively responsible professional software engineering experience in a financial services product delivery setting
Experience developing software in the area of portfolio rebalancing, model manage, optimization and/or portfolio analytics, highly preferred
Experience in server side Java with specific focus in developing multi-threaded and high throughput software
At least 2 years of experience in C#, WinForms and DevExpress
Experience in SQL development on Oracle and SQL-Server databases
Able to contribute to complex design specs in consultation with senior staff
Excellent written and verbal communication skills
Able to work well with peers in a collaborative team environment
Prior experience in Agile development methodology strongly desired
Independently develops and maintains software applications. Works on complex analytical and programming tasks, requiring knowledge of programming languages and data communications and general knowledge of the business operations/customer supported. Leads development and maintenance efforts supporting software application. May function as a Project Manager on smaller projects. Having 3-6 years experience.
Key Skills
1. Experience and skills in server side java developing multi-tier, multi-threaded and high throughput software
2. SQL development on Oracle and SQL Server
3. Prior experience in C# with focus on UI development
4. 4+ years experience in software development
5. Prior experience in financial domain with specific focus in portfolio management, portfolio analytics and optimization or rebalancing