Senior Software Developer
The Senior Software Developer will help design and implement our critical back-office solutions. You will have direct contact with management and end users, gathering requirements, and presenting your solutions. You must be unafraid to share your opinions when appropriate, and humble enough to recognize good ideas when others present them. In this position you will be able to help define our solutions, while enforcing best practices in coding, and unit testing.
Responsibilities
- Complete full systems development life cycle (SDLC) including requirements gathering, design, development, testing, implementation, and maintenance
- Modify existing software applications according to business and functional requirements while maintaining strong documentation
- Consult with internal customers to develop technical specifications, including data flow diagrams
- Collaborate with members of the team (developers, business analysts, project managers, etc.) to deliver solutions within budget and schedule
- Develop and tune SQL queries and stored procedures
- Analyze business requirements to determine feasibility of design within time and cost constraints
- Participate in code reviews
- Mentor the other developers to follow best practices
Technical Skills
- Familiarity with at least one of the .NET languages (e.g. C#, Visual Basic .NET)
- Knowledge of SQL Server, including writing and tuning stored procedures and functions
- Familiar with Object Relational Mapping (ORM)
- Experience with front-end development (HTML, CSS, JavaScript)
- Working knowledge of MVC framework architecture
- Excellent troubleshooting and communication skills
- Knowledge of third-party libraries such as jQuery, Moment and Bootstrap
Other Skills & Licenses
- Outstanding verbal and written communication skills
- Intellectually Curious
- Attention to Detail
- Patient, deliberate, thoughtful, measured, controlled
- Analytical problem solving
- Cooperative
- Dependable
- Able to work independently
- Understand limitations
- Application of knowledge
Education
Bachelor’s degree in computer science or related technical field, or equivalent practical experience. Microsoft certifications a plus.
Competencies
Adaptability - Adapts to changes in the work environment; Manages competing demands; Changes approach or method to best fit the situation; Able to deal with frequent change, delays, or unexpected events.
Communication - Speaks clearly and persuasively in positive or negative situations; Listens and gets clarification; Responds well to questions; Demonstrates group presentation skills; Participates in meetings; Writes clearly and informatively; Edits work for spelling and grammar; Varies writing style to meet needs; Able to read and interpret written information.
Dependability - Follows instructions, responds to management direction; Keeps commitments; Completes tasks on time or notifies appropriate person with an alternate plan.
Design - Generates creative solutions; Translates concepts and information into images; Uses feedback to modify designs; Applies design principles; Demonstrates attention to detail.
Initiative - Volunteers readily; Undertakes self-development activities; Seeks increased responsibilities; Takes independent actions and calculated risks; Looks for and takes advantage of opportunities; Asks for and offers help when needed.
Innovation - Displays original thinking and creativity; Meets challenges with resourcefulness; Generates suggestions for improving work; Develops innovative approaches and ideas.
Planning/Organizing - Prioritizes and plans work activities; Uses time efficiently; Sets goals and objectives.
Problem Solving - Identifies and resolves problems in a timely manner; Gathers and analyzes information skillfully; Develops alternative solutions; Works well in group problem solving situations; Uses reason even when dealing with emotional topics.
Professionalism - Reacts well under pressure; Follows through on commitments.
Teamwork - Balances team and individual responsibilities; Exhibits objectivity and openness to others' views; Gives and welcomes feedback; Contributes to building a positive team spirit.
Technical Skills - Assesses own strengths and weaknesses; Pursues training and development opportunities; Strives to continuously build knowledge and skills; Shares expertise with others.
Work Ethic - Completes tasks correctly, and on time or notifies appropriate person with an alternate plan; Follows through on commitments; Demonstrates accuracy and thoroughness; Takes responsibility for own actions; Commits to long hours of work when necessary to reach goals; Supports organization's goals and values.
Physical Demands
While performing the duties of this Job, the employee is regularly required to sit. The employee is occasionally required to stand; walk; reach with hands and arms and talk or hear.
Working Conditions
The noise level in the work environment is usually quiet.