Posted in

Lead Software Engineer

Lead Software Engineer

CompanyClarivate
LocationLowell, MA, USA
Salary$Not Provided – $Not Provided
TypeFull-Time
DegreesBachelor’s, Master’s
Experience LevelSenior

Requirements

  • Master’s degree in Computer Engineering, Computer Science, or a related field plus a minimum of 5 years of software development experience
  • Alternatively, a Bachelor’s degree in Computer Engineering, Computer Science or a related field plus a minimum of 7 years of software development experience
  • Minimum of 5 years of experience in Isomorphic SmartClient framework
  • Experience with software version Management tools including: GitHub and Bit Bucket
  • Experience in building web services and Remote Procedure Call (RPC)
  • Deep understanding of distributed systems design
  • Deep knowledge of Object-oriented software design and development
  • Deep knowledge of front-end technologies (HTML, CSS, AJAX, XML)
  • Minimum of 5 years of experience with relational database systems like Postgres or SQL Server
  • Experience conducting code and architectural reviews

Responsibilities

  • Gather user requirements to determine feasibility of design within time
  • Implement the design and architecture of the software application using advanced Javascript framework
  • Experience in Isomorphic SmartClient framework
  • Design and develop the server layer of the application including CRUD (Create, Read, Update, Delete) operations using Postgres or SQL Server database
  • Design and develop custom ETL process using Java and Javascript frameworks
  • Design and develop the middle layer of the application for communication to the Postgres database using Java libraries and Remote Procedure Call
  • Design and develop the client layer of the application including login, detailed usage and security aspects of the product using Java, JavaScript, HTML, CSS
  • Architect and produce efficient, clean, and reusable code with automated tests
  • Integrate software components and third-party tools
  • Redesign existing code to correct errors, optimize system’s performance, and improve scalability
  • Create or update technical documentation for operational process, procedures, and environment configurations including the software architecture and design decisions
  • Define and implement databases and workflows
  • Define and implement a strategy for testing new features
  • Direct and execute software system testing and validation procedures
  • Communicate information about the Software system design and maintenance to the project management team
  • Coordinate and verify software system installation, including operations to ensure proper functioning
  • Conduct code and architectural reviews
  • Collaborate with team of engineers and project managers to determine scopes of work, provide estimates and meet deadlines
  • Provide guidance to other engineers to drive quality and deliverables

Preferred Qualifications

    No preferred qualifications provided.