Boston, MA, US
1 day ago
Principal Software Engineer/Developer
Job Description:

Position Description:

Delivers software applications using Acceptance Test and Behavior Driven Development (ATDD and BDD) approaches. Enhances software engineering practices in the area of Continuous Integration/Continuous Delivery (CI/CD). Delivers software applications using Agile development practices. Defines test cases and ensures acceptance criteria matches real business values using SQL. Provides business solutions by developing complex or multiple software applications.

Primary Responsibilities:

Participates in architecture design teams. Defines and implements application level architecture. Develops applications on complex projects, components, and subsystems for the division. Recommends development testing tools and methodologies and reviews and validates test plans. Responsible for QA readiness of software deliverables. Develops comprehensive documentation for multiple applications or subsystems. Establishes full project life cycle plans for complex projects across multiple platforms. Responsible for meeting project goals on-time and on-budget. Advises on risk assessment and risk management strategies for projects. Plans and coordinates project schedules and assignments for multiple projects. Acts as a primary liaison for business units to resolve various project/technology issues. Provides technology solutions to daily issues and technical evaluation estimates on technology initiatives. Advises senior management on technical strategy. Mentors junior team members. Performs independent and complex technical and functional analysis for multiple projects supporting several divisional initiatives. Develops original and creative technical solutions to on-going development efforts.

Education and Experience:

Bachelor’s degree (or foreign education equivalent) in Computer Science, Engineering, Information Technology, Information Systems, Mathematics, Physics, or a closely related field and five (5) years of experience as a Principal Software Engineer/Developer (or closely related occupation) performing software application development in an Agile environment.

Or, alternatively, Master’s degree (or foreign education equivalent) in Computer Science, Engineering, Information Technology, Information Systems, Mathematics, Physics, or a closely related field and three (3) years of experience as a Principal Software Engineer/Developer (or closely related occupation) performing software application development in an Agile environment.

Skills and Knowledge:

Candidate must also possess:

Demonstrated Expertise (“DE”) designing and developing scalable, highly available, and cost-efficient business critical applications in a regulated industry on Amazon Web Services (AWS) Cloud infrastructure using AWS services — Elastic Cloud Compute (EC2), Application Load Balancer (ALB), Lambda functions, Elasticsearch, and AWS CloudWatch; ensuring application security using Open Authorization (OAuth2); and performing application monitoring and alerting using Datadog. DE designing and developing distributed, fault tolerant, and high throughput enterprise software solutions using middleware technologies (Java, Python, and RESTful Webservices), databases (NoSQL and Oracle), and frontend technologies (JavaScript and Angular); decomposing monolith systems according to Microservices Architecture and Domain Driven Design (DDD); and writing unit and integration tests. DE implementing Java design patterns — Façade, Strategy, Adapter, Builder, Singleton, and Factory — for maintainability and scalability of multi-tier applications. DE implementing CI/CD using DevOps tools — Git, Jenkins, Sonar, and Blue/Green Deployment model.

#PE1M2

Certifications:

Confirm your E-mail: Send Email