About the role:
The Senior Software Engineer is a senior member of the development team and is responsible for designing and coding functional programs and applications for our clients. The Senior Software Engineer should be fluent with a variety of operating systems and platforms. The ideal candidate will be comfortable working on complex, highly technical projects, enjoy mentoring junior developers, and working in a fast-paced environment.
The Software Engineer will customize software for computer programs, design prototype applications, implement and test source code, and troubleshoot software applications. The goal is to write “clean” and flawless code to produce fully functional software applications according to requirements.
- Own the development process for the app and product projects, including development and coding, documenting, testing, and debugging.
- Create scalable software platforms and applications that are unit tested, code reviewed, and checked regularly for continuous integration.
- Understand client requirements and how they translate into application features.
- Manage the software development lifecycle.
- Train, mentor, and provide guidance to other developers on the team.
- Perform code reviews to ensure quality and reliability.
- Provide leadership and input by providing scoping estimates, providing senior development support on key, highly-complex projects, and creating best practices for the team.
- Communicating key project data to Project Manager.
- Help team develop and manage best practices
- Bachelor’s degree in Computer Science, Engineering or Information Technology
- 5+ years experience engineering software and application platforms
- Extensive experience in creating applications using the following technologies:
- React Native
- Technically fluent in multiple programming languages
- Experience with gathering requirements to ensure understanding of customer needs.
- Experience creating and managing software development best practices
- Experience or interest in providing technical leadership and mentoring to team members.
- Solid understanding of relational and/or non-relational database systems
- Experience with other common front-end JS libraries and frameworks (e.g. jQuery, Angular, React)
- Experience with deploying and maintaining web application on cloud infrastructure (primarily AWS)
- Experience with DevOps in web applications
- Experience with Laravel or other similar MVC frameworks
- Experience with Git
- Experience with relational databases such as MySQL or PostgreSQL
- Experience creating solutions to complex problems with high attention to detail.
- Proven ability to document processes, including development, tests, analytics, and troubleshooting
Systems / Methodologies:
- Jira, Asana, or similar project management system
- Slack or similar internal communications system
- Harvest or similar time tracking system
- Google Suite (gmail, google calendar, google drive, google sheets, and google presentations)
- Dropbox or similar document cloud system
- Agile Methodologies
- Waterfall Methodologies
Carimus provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.