Job Description
Description:
Summary
The Software Engineer is responsible for working with product management and across the organization to understand our business and product strategies to develop software which supports current and future business needs. In this role you will assess current capabilities, identify gaps, and create a cohesive technology architecture. You will work closely with members of the software engineering team to execute the architecture and ensure that the technology which underpins our applications is ready to scale to meet our business objectives.
Essential Duties
Envision and articulate the “big technical picture” across the development organization
Work closely with the management team in evaluating existing systems and making decisions on future development
Work together with management team in creating a positive working environment for all staff
Identify the financial, security, and compliance impact of proposed technical changes
Identify solutions to technical problems, evaluate tradeoffs, and provide recommendations
Create and maintain clear written and visual representations of the application architecture
Maintain an architecture roadmap that sequences work to meet our technical goals most efficiently
Proactively review instrumentation and logging to identify technical deficiencies
Communicate complex technical decisions and constraints to multiple audiences
Write and maintain code in a variety of programming languages
Perform code reviews and provide guidance to other engineers as they implement components of the architecture
Responsibilities
Ensuring that our software architecture meets quality, security, and scaling expectations
Alignment and clarity of technology vision across the development team
Measurable progress on the architecture roadmap
Mentorship and training of other engineersRequirements:
Required Knowledge, Skills, and Abilities (KSAs)
Note that these requirements are representative, not all-inclusive, of the KSAs required to perform the job.
Mentorship and training of other engineers Minimum 7 years of experience as a Senior Software Engineer or other technical leadership role
Minimum 2 years developing cloud native applications (AWS, Azure, GCP)
Experience with traditional and unstructured data storage systems at scale (several +100GBs)
Deep familiarity with several (3+) modern software languages
Prior exposure to “DevOps” technologies (e.g. Docker, Jenkins, etc.) and how they are leveraged in software delivery pipelines
Excellent communication skills
Strong attention to detail
Preferred Knowledge, Skills, and Abilities (KSAs)
Experience with .NET Core, MySQL, Vue.js, NodeJS
Experience in the Financial Services or FinTech industry
Experience integrating machine learning models into applications
Additional preferred skills defined in Skills Matrix for Software Engineer 5-7 (available upon request)
Physical Demands and Work Environment
The employee is often required to sit and use their hands and fingers, to handle or feel. The employee is occasionally required to stand, walk, reach with arms and hands, climb or balance, and to stoop, kneel, crouch or crawl. Vision abilities required by this job include close vision. Reasonable accommodation can be made to enable people with disabilities to perform the described essential functions. Work Environment: ADA compliant office building.
Other
This job description is not designed to cover or contain a comprehensive listing of activities, duties or responsibilities that are required of the employee. Other duties, responsibilities and activities may change or be assigned at any time with or without notice.
Full-time