Benefits:
401(k)
401(k) matching
Competitive salary
Dental insurance
Employee discounts
Paid time off
Training & development
Tuition assistance
Vision insurance
Wellness resources
Job Title: Software Engineer
Non-Exempt: No
Remote: Yes
Department: Engineering
Reports To: Director of Engineering
Work Hours: 8:00 AM- 5:00 PM ET
About MuniBilling
MuniBilling provides comprehensive electronic bill payment and presentation as a service (EBPPaaS) for public and private municipalities, homeowner associations, and property management groups. We offer both subscription and flexible managed service solutions. We are experts in modernizing billing operations. We are devoted to the success of our clients through implementation and beyond.
Headquartered in Greensboro, North Carolina, we have an informal, collaborative environment and understand the value of feedback and open communication. Full-time, competitive pay, great benefits (medical, dental, vision, life), 401k with company match, and a great work environment.
Mission:
The MuniBilling Software Engineering Team creates high-quality SaaS utility billing products that satisfy the needs of clients and prospects by utilizing the best practices in Agile principles, languages, infrastructure, and quality improvement that are easy and pleasant to use.
The Software Engineer contributes to MuniBilling value proposition by:
Collaborating with team members to continually improve the software platform's capabilities.
Solving operational problems.
Building robust and flexible cloud applications.
Career Growth Opportunities:
MuniBilling offers robust career growth options that include both vertical growth within a specific domain of subject matter expertise (SME) and career diversity across other domains of MuniBilling.
Essential Functions:
Code, refactor, and continually enhance the MuniBilling utility billing cloud application.
Built and maintained efficient, reusable, and reliable Ruby and Rails code.
In collaboration with other engineering team members, design user interfaces and algorithms.
Participate in root-cause analysis (RCA) and corrective action initiatives to identify, isolate, and prevent the recurrence of problems.
Help internal stakeholders troubleshoot application issues through scheduled support rotations.
Collaborate with all software engineering team members to understand requirements, troubleshoot issues, maintain code and develop new capabilities.
Understand and validate requirements from product management and senior engineers.
Maintain source with git/GitHub.
Competencies:
Very good verbal and written communication skills
A knack for writing clean, readable Ruby code
Unwavering commitment to adhere to source control management with git and Jira
Practical knowledge of object-oriented programming and design
Experience working collaboratively with software development engineers
A passion for caring about every element of the software development lifecycle (SDLC), including ideation, prototyping, deployment, enhancements, training, support, and maintenance
Supervisory Responsibilities:
None
Required Education and Experience:
3+ years’ experience with full-stack programming.
1+ years’ experience developing in a Rails environment.
Experience with JavaScript, JavaScript libraries, jQuery, HTML5 and CSS.
Strong understanding of full-stack technologies used to support scalable and extendable. SaaS application deployment environments: Apache, Ruby app servers, SQL, Redis.
Experience creating a database schema, including relational entities across tables.
Familiarity with Model-View-Controller (MVC) concepts, Mocking, ORM, and RESTful.
Experience with Test Driven Development (TDD) and Behavior Driven Development (BDD) using RSpec.
Preferred Education and Experience:
Understanding web performance, caching techniques, browser handling of tags, cache expiration headers, etc.
Understanding of complete software stack, web server tuning, and load balancing
Familiarity with containerized environments such as Docker, Containerd or Kubernetes.
Experience with RuboCop and automated testing tools such as Selenium.
Create and maintain stored procedures and triggers in MySQL.
Affirmative Action/EEO Statement MuniBilling is an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all employees. MuniBilling is proud to be a drug-free workplace. As a condition of employment or during employment, screening tests for alcohol and illegal drugs may be performed on applicants and employees.
Other duties Please note that this job description is not designed to cover or contain a comprehensive listing of activities, duties, or responsibilities required of the employee for this job. Duties, responsibilities, and activities may change at any time, with or without notice.
Internal Candidates Only:
Internal Candidates must meet all metrics in their current role to be considered for internal career transition. If the internal candidate is interested in the posted role, they must have approval from their immediate supervisor.
This is a remote position.