Overview of Position
If you are looking to use your software development skills to further a cause you can believe in while creating a balance between your personal and professional lives, OMRI’s Senior Software Developer position may be a great fit. OMRI believes in a strong life-work balance.
OMRI is seeking a Senior Software Developer to join its IT team to maintain and improve custom software for the organization. Reporting to and collaborating with the IT Manager, the Senior Software Developer will also work with OMRI staff to maintain and improve its custom website, software tools, and data bases for the organization. Further, you will work in a collaborative team environment to implement new tools and frameworks to help OMRI improve its services.
The ideal candidate will have proven experience with three or more of the following : JavaScript (e.g., React, Angular, Vue), PHP, C#, .NET, Drupal, Entity Framework, MySQL, or T-SQL. It will also be beneficial if you have proven experience in two or more of the following areas : Cloud services (e.g., Azure, AWS, Google) administration, linux (e.g. Ubuntu, Fedora, Debian) administration, or Apache or Nginx administration. We are most interested in a Senior Software Developer who can see the big picture, be a creative, critical thinker, and learn new skills quickly.
Starting salary $71,000 to $78,500 per year (dependent on education and experience beyond stated requirements); 40 hours per week; flexible work hours; generous PTO; telecommuting from anywhere in the United States
Major Responsibilities
Database, Hardware, and Software Design
- Collaborate with the IT Manager, IT Advisor, Business Systems Analysts, and OMRI staff to assess software needs and design new features from a user's perspectiveDesign custom user interfaces, forms, and reports Design data base schemasDesign custom software libraries
- Collaborate with the IT Manager, IT Advisor, Business Systems Analysts, and Network Operations to assess hardware needs to support custom software toolsDesign, build and maintain cloud assetsDesign, build and maintain internal hardware assets
Software Programming and Implementation
Commit clear and well-documented code into version control systems that adhere to the principals of maintainable softwareCreate and refactor existing custom user interfaces, forms, and reportsCreate and refactor existing data base schemas and recordsCreate and refactor existing custom software librariesIdentify, document, test and correct bugs in existing codeCreate, maintain, and commit clear, well documented scripts to support internal and cloud-based assetsVM creation scriptsVM support scripts (e.g., IP Ban Tool, automated DB backup)Cloud asset creation templatesTraining, Mentoring, and Support
Prepare documentation and trainings In collaboration with Business System Analysts and staff, prepare documentation that describes how to use software to accomplish specific tasksIn collaboration with Business System Analysts and staff, plan, prepare, and present formal trainings to teach staff how to use the software to accomplish their tasksSupportRespond to direct requests for immediate assistance from OMRI staff by troubleshooting, solving and documenting urgent problems with custom softwareAnticipate future software project needs, understand software project interdependencies, and participate with IT Advisor, IT Manager, and Business Systems Analysts in long-term software project planning activitiesIn collaboration with IT Advisor and IT Manager, direct and anticipate Cloud assets maintenance activities such as user management, credentialing, and operating systems maintenance In collaboration with IT Advisor and IT Manager, direct and anticipate Cloud assets cybersecurity and cybersafety efforts At the direction of the IT Manager, update Work Instructions, prepare Cloud assets documentation, and prepare other documents / presentations as requestedMentoringDeliver constructive feedback on software and design in a professional manner to Software Developers and Junior Software DevelopersCollaborate with IT Advisor and IT Manager to mentor Software Developers and Junior Software DevelopersEngage in code review and participate in pair programming with other Software DevelopersOther duties as assignedQualifications
Education and Experience :
Associate’s degree required; an equivalent combination of relevant education and / or experience beyond the requirements below may be considered as a substitute for the degree requirement3 years of experience in software programming and database management requiredSkills : Required
Experience with three or more of the following languages or frameworks : JavaScript (e.g., React, Angular, Vue); PHP; C#; SQL (e.g., MySQL, T-SQL); .NET Framework; Drupal; Entity Framework;Experience with two or more of the following areas : Cloud services (e.g., Azure, AWS, Google) administration; linux (e.g., Ubuntu, Fedora, Debian) administration; web server (e.g., Apache, Nginx) administrationHigh level of proficiency with source control (e.g., Git) including feature branching, merging, conflict resolution, cherry picking, recovery, and rollback among othersExperience with a scripting language such as PowerShell, Python, perl, or linux shell scripting (e.g., bash, csh, tsh)Experience with relational database theory (e.g., ACID, levels of normalization, Codd’s Twelve Rules) and software design principals (e.g., SOLID, object-oriented versus functional programming, test-driven design)Experience with unit test developmentExperience with a management process (e.g., Agile, Scrum, Lean, Kanban)Experience with HTMLProject coordination and planning skillsStrong customer service skillsSuperior written and oral communications skillsWillingness to participate in professional development activities, and ability to acquire new skills and adapt to change quicklyAbility to work constructively as part of a dynamic teamHigh level of attention to detail and ability to process complex information and instructionsAbility to manage and prioritize multiple tasks, organize information, complete tasks in a timely fashionAbility to maintain confidential business information and adhere to concepts of business and professional confidentialityPreferred
Familiarity with and support for the organic communityFamiliarity with Content Delivery NetworksExperience with DevOps tools for continuous integration and continuous deliveryWorking knowledge of document control processes and techniquesKnowledge of chemistryOther Requirements :
Ability to work occasional nights and weekendsAbility to occasionally travel domesticallyBenefits
Full time position with competitive salary50% employer contribution to dependent medical, vision and dental plans100% employer-paid life insurance, long term disability and short term disability insuranceRetirement planGenerous Paid Time Off13 paid holidaysOpportunities for flexible schedulingOpportunities for training and professional developmentBike-friendly business and support for alternative transportation optionsSmall nonprofit organization with established team and leading role in organic industryCasual, fun work environmentFor more detailed information, please visit ourDeadline
Open until filled