Note: The job is a remote job and is open to candidates in USA. PeopleFluent is a company that specializes in eLearning standards based software, and they are seeking a Senior Software Engineer to join their Rustici team. The role involves maintaining and improving software products, writing technical specifications, mentoring junior developers, and ensuring quality in software development.
Responsibilities
- Maintaining existing codebases: One or more software products and all of the ancillary tools needed to manage them. These are profitable products that have been around for 10+ years (and we expect to be around for 10+ more) and that our customers expect to work as well or better than they did last year or the year before or the year before that. There is technical debt to be paid, refinement to interfaces and implementations, bugs to squash, and processes to improve. QA is a forethought and a requirement, developing test code is just part of the work
- Writing technical specifications for new work: Anytime we embark on larger features, we build out a technical specification, with the goal of expressing the work in English before we attempt to express it in code. We write technical specifications for the larger work we do
- Taking new features from start to finish: We really value autonomy here at Rustici. Engineers pick up work that needs to be done and run with it until it has passed code reviews and QA
- Identifying new work: We rely a lot on customer feedback for improvements and new features, but we also don’t expect all the answers to come from the top down, and will look to our engineers for ideas on what to work on next
- Weekly standups: We try to keep meetings at a minimum. Each team meets once a week to discuss the work that happened last week, and what they expect to accomplish in the coming week. Most teams also have a longer form meeting to dive deep into technical items impacting the team as a whole
- Mentoring: We feel one of the best ways to enhance our teams overall and individually is for our more experienced developers to pass along their techniques, how they’ve honed their craft, and what successes and failures they’ve experienced in their career to more junior developers
- Learn Everyday: We believe in continuous improvement whether that is at a product level or a personal one. Engineers should be improving their craft, whether that is via new technical skills or tools, diving deep into an existing ability, or learning more about how the business operates
Skills
- Strong web application development using contemporary frameworks in Java, Python, JavaScript/TypeScript, or similar particularly in extensible, scalable, performant, and secure implementations
- Experience with front end SPA development in a contemporary framework such as Vue, React, or similar as well as experience directly with HTML and CSS
- Experience with implementing automated unit, integration, end-to-end, etc. tests
- Experience with contemporary software development lifecycle processes including agile principles, task estimation, version control, quality assurance, release management, etc
- Experience writing technical and/or functional specifications
- Experience mentoring other engineers
- Experience with cross team collaboration including with support, product, and operations teams
- Experience with a Unix CLI toolset preferred
- Experience with deployment of web applications particularly in AWS is beneficial
Benefits
- Flexible work environment: Rustici Software offers the best of all worlds when it comes to where you work. Remote from your home office, a private office in Franklin, TN if you prefer, or a mix of both. [We care more about the work that you do than where you do that work.]
- Untracked PTO
- Medical, Dental, and Vision insurance
- HSA and FSA plans
- Short-term and Long-term disability
- Company paid life insurance
- 401k/Retirement vesting+matching on day 1
- Performance-based bonuses
- Office perks: Concierge services, gym equipment, yoga room and stocked kitchen with snacks and drinks
Company Overview