Sr Software Engineer
Digital Marketing Agency
A Senior Software Engineer should have enough experience to understand a wide variety of approaches to systems/application design. Given a mission like "figure out how to move our application from AWS to Azure" or "create a new CMS-enabled web application that integrates with X systems", should be able to put the entire systems together and come up with end-to-end solutions.
Required skills:
- Bachelor’s Degree or equivalent in Computer Science or IT related field
- Smart, high aptitude to learn new things and sense of urgency to get things done
- Pro-active self-starter that is able to accomplish goals with little to no “hand-holding”
- 4+ years experience building highly-scalable interactive web applications
- Significant real-world experience developing real products or custom responsive websites at large scale
- Strong programming skills in JavaScript, HTML5, CSS3 and server-side web technologies such as ASP.NET MVC, C#/.NET, PHP, etc.
- Experience with Object Oriented Programming paradigms
- Experience working with database technologies (MSSQL, MySQL, Document Databases)
- Some experience with Content Management System systems from both a development and administration perspective (Sitecore, AEM, Kentico, WordPress, etc.)
- Experience with source control (Git, SVN, TFS) and bug tracking software
- Experience on a team that produced production code
- Exceptional communication and collaboration within and across multiple teams.
Responsibilities:
- Assist in the implementation of custom technology solutions that solve the business needs of our clients
- Collaborate heavily with fellow developers, designers and analysts to solve problems and aid in the implementation of the solution
- Develop complete front-end stack of projects using HTML/CSS and Javascript frameworks
- Develop back-end, server-side code using languages such as C#/.Net, Java, and/or PHP
- Integrate front-end UI with backend and/or third party data layers
- Develop RESTful APIs to consolidate and normalize data across systems
- Assist in integrations with various client and third-party systems, including CMS, CRM, and ERP systems
- Set and follow coding standards
- Debug cross-browser compatibility issues
- Help mentor other team members on relevant technologies
- Aid in the estimation of client projects and determining scope of client engagements
- Aid in development and optimization of development processes to bring efficiencies to the team
- Occasionally interface with clients either on the phone or in person
- Bring fresh, creative ideas on how to continuously improve our team and service offerings