Senior Software Engineer
Description
This position is for a Senior Software Engineer that has significant software development lifecycle (SDLC) experience in application architecture, design, development, testing, integration and client support.
Qualifications
The target candidate will have:
- Have a bachelor’s degree in computer science, engineering or equivalent
- Demonstrate 7+ years proficiency in object oriented design using PHP on professional projects
- Exhibit proficiency in technical design, analysis, debugging, profiling and developing applications and APIs
- Possess experience with MVC design patterns, such as the Laravel or CodeIgniter frameworks
- Demonstrate skill with SQL and must be proficient enough to understand and provide database cogent feedback about database design, interaction, performance considerations, and troubleshooting techniques
- Have the ability to work in a team environment and/or directly with clients
- Possess demonstrable experience delivering results on Agile projects
- Establish knowledge of TDD best practices
- Demonstrate familiarity object oriented design
- Demonstrate experience developing and delivering Web applications
- Understand security best practices with regards to software applications
Responsibilities
While performing job their duties, the candidate will be primarily and not exclusively responsible for:
- Designing technical solutions to real-world problems using appropriate design and architectural patterns, test driven development, SaaS, OOD, and other methodologies and frameworks
- Participate in scrum, sprint planning, mentoring
- Collaborating with product owners, external vendors, developers, and others in analyzing complex business requirements and breaking them down into measurable and implementable user stories
- Adapting existing code to include unit or integration tests
- Providing or facilitating software support to customers, both internal and external, as needed
- Successfully delivering one or more value added services to customers, as the service owner
- Communicating and collaborating with business and developers to design and implement improvements to existing programs and systems
- Ensuring that production software continues to function as expected
- Creating and maintaining documentation for existing and new systems in order to guarantee proper future maintenance and upgrades
- Overseeing change management processes like source control, code reviews, change tracking, documentation, upgrades, concurrent versioning, migrating or eclipsing discontinued products, etc.
- Participating and successfully delivering on multiple high priority projects while adapting to changing business priorities as both project lead or member
- Documenting, disseminating, and enforcing security best practices in new and existing code
- Achieving or exceeding expectations with relation to goals, services SLA’s, key performance indicators, or similar items
- Ensuring scalability, sustainability, and standardization as applicable with existing and newly implemented systems
- Leading by example in fostering a culture of accountability by demonstrating above-the-line behavior: seeing it, owning it, solving it, and doing it
Relevant Skills and Technologies
Though not all of these skills and technologies will be actively used, a qualified applicant will benefit from experience with the following:
- Microsoft technologies: ASP.NET, C#, Visual Basic.Net, PowerShell, Visual Studio, MSSQL
- Other programming and scripting languages: PHP, Bash, Java, Python, Ruby
- IDEs: NetBeans, Eclipse, Visual Studio, PHP Storm
- Web development: HTML5, CSS3, JavaScript, AJAX
- PHP frameworks and tools: CodeIgniter, PyroCMS (Laravel), Composer
- Databases and servers: MySQL, MSSQL, MongoDB, DBF
- Linux: Shell scripting, Docker
- Publishing platforms: WordPress, PyroCMS
- Web, application, and niche servers: Apache, nginx, FastCGI, node.js, Jenkins
- Standards and protocols: OData REST ISO Standard, ACORD, PSR, OpenID Connect, OAuth 2, LDAP, SOAP
- JavaScript frameworks: React JS, React Native, Express, Restify
- Mobile development on iOS and Android
- Versioning: SQL Source Control, SVN, Mercurial (hg), Git
- Agile (Scrum), or Waterfall project management techniques
- TDD, Integration Testing, OO Software Design, DevOps
Company benefits include competitive compensation, medical/dental/vision/disability insurance options, paid time off (PTO), company holidays, on-site gym, telecommute/remote work options and more.