Senior Software Engineer II

PrintMail Solutions

Job Brief:
A Senior Software Engineer is a skilled and experienced software engineer responsible for the detailed design, implementation, and testing of subsystems and system components. A Senior Software Engineer is able to build a wide variety of software subsystems and components efficiently and effectively, given only a requirements specification and constraints. A Senior Software Engineer is able to develop and sustain these subsystems and software components in complex, multi-vendor, multi-platform environments. Tasks may include design, maintenance, and working closely with both internal and external customers. Work weeks are usually 40-50 hours.

Take initiative in performance, working independently and with groups to effectively accomplish project objectives and engage in the following:

• Interact with fellow software engineers, technical leaders and Product Owners to understand component specifications and recommend changes to facilitate efficient and effective development.
• Interact with representatives of other industrial and government groups to understand and/or recommend data interchange formats, APIs, messaging strategies, application server software, as well as hardware and virtual machine requirements.
• Design and document subsystems and system components consisting of several objects working together to execute an encapsulated function of the larger system.
• Implement and debug subsystems and components.
• Write and execute tests for subsystems and components.
• Participate in integrated test sessions of components and subsystems on test and production servers
• Determine and communicate the implications of system-level decisions on subsystems and components and help determine how best to mitigate or take advantage of these implications.
• Determine and communicate the requirements and capabilities of components within the context of the larger system, project, and team.
• Support management of the team’s technical infrastructure (e.g., repository, build system, testing system) under guidance from the systems engineer or other project leader.
• Participate in efforts to share software technology and expertise within the company; mentor junior and aspiring engineers.
• Write code to create single thread, multi-threaded, or user interface event driven applications
• Use source debuggers and visual development environments
• Write, modify, and debug software for client applications
• Design, deploy and support best in class software development processes and tools
• Test and document software for client applications

Required Skills and Experience:
Includes the responsibilities of the Software Development position and individuals having the ability to and competency of performing the tasks from that prior level.

• A bachelor’s degree in Computer Science or equivalent work experience.
• Five + years of experience independently designing and implementing small or medium-sized software systems and components.
• Expert working knowledge and experience with coding languages including: C#.NET, ASP.NET, MVC.NET, CSS 3, Entity Framework (EFF), AJAX and related technologies, jQuery, one or more JavaScript framework(s) (e.g. React/Angular/Node)
• Knowledge and experience with data exchange formats such as: JSON, and XML.
• Knowledge and experience working with and/or developing REST APIs.
• Knowledge and experience with a continuous integration and continuous delivery (CI/CD) tool (e.g. Jenkins, TeamCity, Bamboo, GitLab).
• Experience in maintaining ASP classic web applications
• Leadership skills
• Successful design and implementation of multiple software components and subsystems.
• Strong attention to detail and ability to multitask
• Ability to communicate the design and implementation of software systems including relevant strengths/weaknesses and reasons for implementation decisions.
• Knowledge and experience of T-SQL and Internet Information Services (IIS)
• Experience working in an Agile SCRUM methodology is a plus.
• Experience with Agile project management tools (e.g. JIRA) is a plus
• Familiarity of multi-threaded applications is a plus

PrintMail Solutions logo

Location: Newtown PA (Remote)
Company: PrintMail Solutions
Job Type: Full Time

Email Now Apply Through Job Board

Share this job:

Log in to flag this listing