Purpose
This Senior Software Engineer will build next generation solutions to support the Save A Lot business. The ideal candidate is an experienced software developer with building scalable solutions. They must have strong, firsthand technical expertise in a variety of configuration management and programming languages. As an expert in software engineering, undertakes complex projects requiring additional specialized technical knowledge. Makes well-thought-out decisions on complex or ambiguous systems software engineering issues. Handles conflicting direction and resolves conflict to proceed. Ensures that system improvements are successfully implemented and monitored to increase efficiency. Makes complex modifications to existing software to fit specialized needs and configurations. Establishes and communicates common goal and direction for team. Acts as a source of direction, training and guidance for less experienced staff. Monitors project schedules and costs. Plans, conducts and supervises assignments. Reviews progress and evaluates results. Recommends changes in procedures. Reviews progress with management. Operates with substantial latitude for un-reviewed action or decision. They must be at ease working in an agile environment with little supervision. This person should embody a passion for continuous improvement and test-driven development.
Responsibilities
Possesses and apply comprehensive knowledge of particular field of specialization to the completion of complex assignments. May cross fields
Develops accurate task definition, estimates, and task schedules for own assignments
Responsible for daily communications to management and internal organizations regarding status of all assigned tasks
Complies with established processes, tools and expectations
Lead analysis and development of technical solutions to resolve problems and involves and guides other team members in problem solving activities
Maintain excellent business communication with Analysts, Business Owners and Technical Staff. Provides analysts, management and business owners/users with status reports, problem logs (issue logs) and service request status on all tasks in the work group. Oversee time spent by others in the work group
Participates with Business Systems Analysts in the business design (requirements definition) and technical design (external design) of end-user applications systems
Work alongside other engineers on the team to elevate technology and consistently apply best practices
Evaluate alternative approaches in design of application systems, including assessment of risks and benefits associated with each alternative
Plan, conduct and supervise others in the development of specifications, coding of new programs, physical design of data records, data files, and databases, creating new data structures, creating new job streams, and modify existing programs, data structures, and job streams
Participate in the implementation of new systems including the integration of the new system
Participates in coding of new programs, creating new data structures, physical data record/file design, creating new job streams, and modifying existing programs, data structures, and job streams
All work is produced in accordance with established procedures, following departmental standards, guidelines and system development methodologies on all assigned tasks
Plan, conduct and supervises others in the development of test cases and test plans, create the unit and system test environments, and conduct unit and system tests for new or modified programs and job streams
Submits program and design work for review by technical and user staff and participates in the review of program and design work of others
Reviews and validates the application of sound programming and design techniques
Verify installed systems to ensure that they adequately meet user requirements
Ensures and assists with the development of test cases and test plans and testing
Test software development…