Joy Bose: Detailed Online Resume
Work experience
Oct 07-present: Software Engineer, Digital Applications International, Cheadle Heath, Stockport
Involved in software development for a number of projects with various customers including ASDA George, Screwfix, B&Q, Birds Eye Walls, Linpac Allibert, Wincanton, Lever Faberge. Some highlights:
Practice of different stages of the software life cycle, including requirements analysis, development, testing with the customer, bug fixing, out of hours support, running training sessions, documentation and change controls.
Domain knowledge of different aspects of the logistics industry, including WMS (warehouse management systems), CMS (carrier management), using interfaces such as Operations Mgmt Screens, Remote Desktop Terminals, voice picking, packing benches etc.
Platforms worked on: Mainly C on SunOS/AIX/HPUX, Visual C#.NET, VC++ 6, Informix database.
ASDA: Involved (in a team of 5+) in developing (in C) of a warehouse control system (WCS) for ASDA George brand of clothing, that interfaces to a Warehouse Management system called GDS and programs the jets on the conveyors on receiving instructions from the WMS. The host writes telegram messages to the Informix Database, and the software backend is coded in C language.
Involved in: database management, debugging / modifying already existing / writing small snippets of C code of Unix, comissioning the system, conducting FAT and SAT tests with the customer as per FTS, opening and clearing remedy tickets as necessary, involved in go-live support.
Completed first project in May 2008 with ASDA George Brackmills hanging, second project Jan 2009 Asda Lymedale hanging site. Out of hours telephone support for 2 sites NE and Brackmills for 3 weeks in December 2008-Jan 2009. remote launch support for Lymedale site since go live in Jan 2009.
Screwfix: a new carrier management Packflo system installed using configurable DAI's libraries with WebOM screens, communicating through an API with SOAP interface for carrier selection. Wrote plugins for Fedex carrier. Worked total time only a month around July 2008.
Linpac: Coded some changes in C# and ASP.NET. Installed a new OEE service that called som stored oracle procedures on the host system. A few changes to the web screens code. Additional logging installed. Some support issues. Worked in Feb-March 2009.
Oct 06-Jul 07 Part time software tester, Transitive Limited, Manchester.
Successfully completed testing over 200 Solaris and 400 SUSE Linux binary commands, and about 20 Solaris and Redhat Linux applications. Skills developed included:
Reading man pages for unfamiliar SUSE and Solaris commands and devising tests to see if the commands (with all their options, such as ls -a and ls -l etc) worked correctly. The tests had to be machine and user and other variables (such as date and time) independent.
Downloading SUSE Linux and Solaris software (either source tarballs or RPMs) from sites like Sourceforge , Freshmeat or CentOS , installing them (installing prerequisite RPMs, or configuring and compiling from source if necessary) on Redhat Linux platform on which transitive's virtual machine had been installed, and filing bug reports whenever found a bug in the software.
Writing test scripts using perl, sed and Unix shell scripting for setting up the pre and post environment of the automated interface, for the actual test of the various options of the SUSE or Solaris commands. The challenge was setting the outputs to be invariant of the hardware/software configuration of the particular system used.
Also sometimes updated the student testing Wiki with details of the procedure for testing, so that new students would have less problems starting.
Skills gained: technical (SUSE, Solaris, skills), responsibility, time management and utilisation (had to send daily reports of work done)
Sep 02-06 Part time undergraduate lab tutor, School of Computer Science, University of Manchester.
Lab modules demonstrated include the following:
Advanced Java (CS1092)involving coding for a snake game (inheritance and polymorphism etc)
Introduction to Linux (CS101) involving basics of Linux shell commands
Prolog and Natural Language (CS2442) involving programming Prolog and using lambda calculus, based on the textbook Learn Prolog Now
Logic Design (CS1021) involving Mentor Graphics simulations of simple circuits and implementing/downloading them on an FPGA board
Robotics (CS6092)involving programming a robot arm to lift an object and a mobile robot to move around obstacles
Operating systems (CS2042) involving simulating different types of caches: fully associative, set associative, direct mapped, based on the textbook ARM System-on-chip Architecture
My work was in laboratories having around 20-50 students (in a team of 2-4 demonstrators).
Marked students in their lab assignments, according to a given marking scheme. Had to use discretion sometimes in the marking.
Cleared doubts of students related to the modules, sometimes helping them to debug their programs, or clarifying the questions.
Skills gained: Teaching, discretion in marking students, communication skills, being on time for the labs, thinking on the feet to resolve unforeseen problems pf the students.
Jun-Jul 01 Software Developer, Uttar Pradesh Management Combined Admission Test (UPMCAT) Management Committee, Allahabad, India and UPSEAT 2000-SE (Uttar Pradesh State Engineering Admission Test 2000-Second Edition)
Part of team of 4 involved in developing software (using MS Access 97 and Visual Basic for Applications programming) for the seat allocation process (as per the merit list and different reservation quotas) of MBA and MCA candidates in various universities in the province of UP, India. We also operated the software during the actual week of seat allocations.
Also generated a report confirming each admission made and report summaries according to different criteria.
There were 4 computers and a display (which was a report, updated constantly with seat status as soon as every new admission was made) connected by network over access. Had the locking system in access when each query was updated. It was around 3000 students or more in the merit list for free and paid seats in private and government colleges, with maybe around 50 universities to whom seats were allocated (as per the availability of seats, this information was pre-given). There was a master table, and many queries from the master table for different colleges and other criteria, and reports generated of the number of candidates selected per day per category for each institution etc.
Initially we were given the details of what information will be provided and what the software needs to do, we had to develop the database schema (which tables are needed and their links etc), plan the tables, SQL queries, reports and forms needed, and do the coding to implement the frontend and backend system.
The software was successfully used for seat allocation of over 3000 candidates belonging to different reservation categories to different universities.
Skills gained: Experience of working on a real life, real time project with no scope of mistakes, responsibility, time management, project management, teamworking. Was stressful and had to work long nights, but a very rewarding experience in the end.
May-Jun 01 Internship, Centre for Development of Telematics (C-DOT), 9th Floor, Akbar Bhavan, Chanakyapuri New Delhi, India
Was assigned to a CDOT engineer during my internship and worked on her instructions. Involved in porting TCP/IP into CDOT's proprietary operating system, CDOS, developed a framework for adaptation of the BSD socket programming interface to CDOS. Documented the purpose of various programs (header files such as ip.h and C source files) in the TCP/IP source code to help the engineers in the actual implementation.
Skills gained: Timekeeping, experience of working in a large company with their rules and regulations, technical skills.
Academic software projects
2002-07 Neural network simulations for spiking neuron models (PhD research).
Platform: Java and Matlab
Role: Experiments to determine the properties of the neural model and optimisation of the model. Also experiments on neural associative memories.
1. Coded a simulator in Java to simulate firings of bursts of spiking neurons, to study their dynamics. It was event driven, with every spike firing being an event, and global time being recalculated for every event. Used GNUPlot to plot the spike firings (1st year)
2. Coded a simulator in Java with Swing GUI to simulate a N-of-M SDM memory. (1st year)
3. Many experiments in Java to study an unordered N-of-M SDM, rank ordered SDM. In each case, plotted the results using gnuplot. Plotted 3D plots as well of the unordered memories, replicated the results in first N-of-M SDM paper.
4. Coded a Matlab simulator for spiking neurons: ODSHO/RDLIF model (with 2nd order dynamics of neural activation rise and decay) and with neural activations recalculated with discrete timesteps. Plotted the outputs also using Matlab (2nd year)
5. A simulator in C (sw_sw.c) for the Altera NPE simulation, for generating lists of inputs and expected outputs. Also a C simulator for a backpropagation algorithm.
6. Java experiments on neural associative memories perfomance when various input parameters are varied. Switched to plotting with matlab. Also simulating the memory performance in a 5-50 and 10-100 size memory etc, both for a correlation matrix memory (CMM) and sparse distributed memory (SDM) when the significance is kept at 0.9 or 9.99 etc and other small experiments.
7. Java simulator for a sequence machine, elman model and shift register model, both online and offline. Inputs and outputs were by hand, not automated.
8. Matlab simulator for the Elman, shift register and combined models of sequence machine, with experiments to test its performance, here the inputs were aurtomated based on various parameters such as distribution and types of inputs. The outputs were plotted also using Matlab.
9. Matlab simulation of the RDLIF model experiments for the WIRN paper, to study the dynamics of spiking neurons and whether inter-symbol interference affected the performance, and what was the optimal threshold beyond which the neuron spike bursts died out, and in which cases the bursts exploded.
10. Changing Mike's SpikeNet Java simulator for spiking neurons to make it suitable for a sequence machin with RO codes and using the RDLIF model of spiking neuron. Used that simulator to simulate sequences of symbols encoded as RO codes, and also built a equivalent matlab simulator to test if the outputs were equivalent and the Java simulator was working correctly.
11. A way to visualise all the spike timings, coded in Matlab, with the different neural layers plotted on Y-axis with different and the time on X-axis. The output of mike's simulator was passed through a perl program coded by SteveT, which generated lists of times and neuron numbers only, which was input to this plotting program, which then plotted the system outputs.
12. Matlab plots for the further experiments on the combined model, to study its performance for different distributions of the inputs (such as inputs being generated with a 0.8 probability 1 and 0.2 probability 0 on an uniform distribution), for different values of the context sensitivity parameter lambda, the significance factor alpha and memory sizes, and finally plot the results.
13. Java-matlab programs to determine and plot the information content of RO codes of various sizes, and also to study the memory performance with and without errors, and with the desensitisation factor being varied, and size of memory being varied etc.
14. Did experiments on the spiking neural memory with some (20-30%) irregularity in timings to see how well the system could cope.
2001-02 Implementation of an OpenBSD Firewall with Network Address Translation and Reverse Port mapping to be used as the default Gateway for accessing the internet (Final year project).
Platform: OpenBSD
Role: Scripting of firewall and NAT rule set, configuration of firewall and NAT, installing OpenBSD on the gateway machine and configuring it suitably.
March 2001: Project on the Automation of College Account Section (3rd year project)
Platform: Oracle 8 as backend with Visual Basic 6 as the Front-end
Role: Database Schema Development, Development of Visual Basic Front-end (using Microsoft Agent), Oracle In-Proc server connectivity.
October 2000: Automation of Hotel Management system (3rd year project)
Platform: C on Linux with networking (socket programming), Graphical User interface through Tcl-Tk and a text database in which entries were added, deleted and queried.
Role: Database Management in C.
Education
2010-Present
SD226 Course in Biological Psychology (part time), worth 30 credits, with Open University, UK.
Studying basics of fMRI, EEG etc techniques, how neuron level changes influence behavior.
2002-07 Ph.D. "Engineering a sequence machine through spiking neurons employing rank-order codes". School of Computer Science, The University of Manchester, UK
Supervised jointly by Professor Steve Furber and Dr Jon Shapiro
My thesis investigates the problem of sequence learning using spiking neurons and uses rank order codes (first used by Thorpe et al) as the coding scheme. Used a spiking neural simulator in collaboration with another researcher in my group, Mike Cumpstey.
Recipient of Overseas Research Studentship (awarded by Universities UK) and CS departmental scholarship for 3 years of PhD.
List of Publications
(1) An associative memory for the on-line recognition and prediction of temporal sequences. in IJCNN 2005, Montreal, Canada
(2) A spiking neural sparse distributed memory implementation for learning and predicting temporal sequences. In ICANN 2005, Warsaw, Poland
(3) A system for transmitting a coherent burst of activity through a network of spiking neurons. Published in WIRN 2005, Vietri Sul Mare, Italy
(4) A neural network for recognition and prediction of temporal sequences of patterns , published in PREP 2005, Lancaster University
(5) A sequence machine built with an asynchronous spiking neural network in 17th UK Asynchronous Forum, Southampton, Sep 2005
(6) An asynchronous spiking neural network which can learn temporal sequences in 18th UK Asynchronous Forum, Newcastle, Sep 2006
(7) Sparse Distributed Memory using Rank Order Neural Codes (Co-authored with Steve Furber, Gavin Brown, Mike Cumpstey and Jon Shapiro) in IEEE TNN, May 2007
PhD certificate
1998-2002 B.Eng. (1st class with Honours) in Computer Science and Engineering, National Institute of Technology, Allahabad, India
Modules covered included Neural Networks, Computer Algorithms, Data Structures, C Programming, Operating Systems, Software Engineering, and Electronics.
Detailed list of modules and grades
Final year dissertation- “Configuring a firewall with Network Address Translation on OpenBSD”. Weighed Aggregate Percentage: 82.04%. Recipient of merit scholarship (to top 10% students in batch) awarded by university for 3 years (out of 4) from 1998 till 2001.
1998 12th standard (equivalent to A-levels), at Mahanagar Boys Inter College, Lucknow, India (UP Education Board). Distinction (80%) in Maths, 74% in Physics and 73% in Chemistry.
View intermediate marksheet and certificate
Recipient of the prestigious National Talent Search Scholarship awarded by National Council of Educational Research and Training from 1997-98. Also got selected in National Standard Examination in Physics 98 (preliminary examination of Physics Olympiad) being in top 1% of all Indian candidates
1996 10th standard (equivalent to GCSE), at Mahanagar Boys Inter College, Lucknow, India (UP Education Board). Subjects taken: English, Hindi, General Science, Social Science, Mathematics, Biology. Distinction in all subjects except Biology.
View High School marksheetand certificate
IT Technical skills
Java: My PhD work in the last 5 years was mostly based in Java (and Matlab). I did several simulations of spiking neural networks and neural associative memories in Java, and used Java Swing to program the GUI. I also tutored for a laboratory course in Advanced Java at the university, where I helped students debug their programs and marked them.
C: I used C programming (text databases, socket programming, graphics, algorithms for sorting) in several undergraduate projects in my university from 1998-2002, a few neural network algorithms in 2003-06, and a few tests with C on Unix in setting up a pre-environment for testing during my work in Transitive in 06-07.
Perl, sed, awk, unix shell scripting: During my work in Transitive from Oct 06 till July 07, I used shell scripting to extract information from the output of tested Linux and Solaris commands to make them invariant to the system, user, date, time etc.
Databases: I maintained a mysql database for a 2003-06 for a society forum (and also constructed and maintained their website). I did a real life project in 2001 using a MS Access Database with VB programming, and helped to update a marriage website also using MS Access backend and SQL in 2006. I did a module and an academic project using Oracle with VB frontend, using SQL queries in 2001. Working with Informix databases (creating and modifying schemas, views, tables, stored procedures) since Oct 2007
Summary of skills
Operating Systems: Windows (10 years), Linux (8 years), OpenBSD (1 year), Solaris. Languages: Java (6 years), C (7 years), VB (1 yr), Prolog (1 yr), Perl (1 yr), SQL (2 yrs), HTML (3 yrs), ActionScript (2 mnths), MATLAB (3 years). Databases: MS Access, MySQL.
Languages
English and Hindi (spoken and written), Bengali (spoken)
Professional affiliations
IEEE-Computational Intelligence Society (IEEE CIS) from 2005-06
Association for Computing Machinery (ACM) from 2002-06
British Computer Society (BCS) from 2007-08
General Hypnotherapy Register (applied) from 2011
Association of Chartered Certified Accountants (ACCA) student member from 2008, cleared exams F1 (accountant in business), F2 (management accounting), F3 (financial accounting international), F4 (corporate law UK), F5 (performance management), F6 (UK Taxation), F8 (audit and assurance) and F9 (financial management). Currently self studying for F7 (financial reporting international)
Hobbies and interests
Meditation, Tai Chi, badminton, chess,
Academic Scholarships
National Talent Search merit scholarship awarded by National Council of Educational Research and Training, India from 1997-98.
Merit Scholarship awarded to top 10% of students in batch of 60 for 3 years of undergraduate degree (out of 4) at Motilal Nehru Regional Engineering College from 1998-2001
Overseas Research Studentship awarded by Universities UK for first 3 years of PhD from 2002-05
Intel Travel Scholarship for participation in HiPC (High Performance Computing) 2001 conference organized by the IEEE
Prizes in non technical events
First prize in the Dumb-Charades Competition in Cascades, the LitFest in 1999
First prize in the Dumb-Charades Competition in Culrav 2000, the Inter-Collegiate Cultural Festival of MNREC
Second prize in 20 Questions Competition in Culrav 2001, the Inter-Collegiate Cultural Festival of MNREC
Prizes in technical (computer science) events
Second prize in the Computer Science Aptitude Test during Avishkar 2000, the Technical Festival of MNREC
Second prize in the Puzzle Test during Avishkar 2000, the Technical Festival of MNREC.
Third prize in the Predefined Problems Programming Contest during Avishkar i2k, the National-Level Technical Festival of MNREC
Positions of responsibility
Co-founder and webmaster of University of Manchester Multifaith society from 2005-07. Helped organise various society events.
Vice President Membership for AKPsi business fraternity during 2003-04. responsible for managing the rush programme for recruitment of new students into the society, by organising interest days and overseeing the induction programme and the written test, and updating the AKPsi headquarters in Atlanta of the members list.
Secretary and Webmaster of Meditation and Buddhist Society at University of Manchester from 2003-04, Chair from 2004-05. Responsible for booking rooms in student union, managing the stall during freshers fair, and maintaining the website.
Collected for Manchester University Student Charities Association (MUSCA, now called Manchester RAG), for a few charities including Andy Cole Children's Foundation (in Manchester Gay Village, Canal Street), Christie's Appeal (in MEN Arena during Justin Timberlake's gig), Cancer Research UK (during Hogmoney 2002 in Edinburgh/Glasgow), Multiple Sclerosis Society (outside Manchester United football stadium) for a total of above 500 pounds for the session 2002-03
Coordinator of Breakthrough, the CS Paper-Presentation contest during Avishkar i2k, the National-Level Technical Festival of MNREC in 2001. Responsible for selecting entries (in a team of 2) and organising the event.
Part of 4 member team to design the website for Avishkar i2k, the National-Level Technical Festival of MNREC in 2001.
Coordinator of Open Software Contest during Avishkar 2001, the National-Level Technical Symposium of MNREC. Responsible for selecting finalists, overseeing the installation of the software entries and assisting the judges.
Coordinator of the Arts Committee at Freshers Week 1999 in MNNIT Allahabad. Responsible for coordinating the preparation of a mural by new students to MNREC to be displayed during the actual freshers festival day.
Other
Member, Young Fabians in 2011
Advanced diploma in Creative Hypnotherapy from NCOCH, accredited by general hypnotherapy standards council, in 2011
Advanced Certificate of Personal Development after attending the CPD programme at the Students Union, University of Manchester in 2002
Completed a number of Research Training Courses conducted by Research and Career Management Training (RCMT), University of Manchester during 2002-04
Completed a course in “Computer Network and Internet Applications” in 2000 and qualified for award of certificate from the Continuing Education Programme (CEP), IIT Kharagpur, India
Completed a 3-day UK Grad Programme called "developing the postgraduate manager" for researchers at UMIST, Manchester in 2004
Qualified for award of merit certificate in All India Talent Search Examination (AITS-90) organized by the World Buddha Foundation, Ranchi
Participated in the International Competitions for Schools organized by the University of New South Wales, Australia in 1996 with distinction in Science, Mathematics and English and achieved a silver medal
All India Rank 1 in Special Class Railway Apprentices 98 Entrance Exam conducted by Union Public Service Commission, New Delhi, India
All India Rank 2150 at Indian Institute of Technology Joint Entrance Examination (IIT JEE) 1999
All India Rank 156 in Common Entrance Exam (CEE) 98 for admission to Engineering Colleges and RECs in the state of Uttar Pradesh, India
Qualified in the top 1% in India in the National Standard Examination in Physics 1998, preliminary examination of the Indian National Physics Olympiad conducted by the Homi Bhabha Centre For Science Education.
Member of British Mensa Philosophical Discussion Group from 2004-06 and contributed a few articles
Appeared on the BBC Heaven and Earth show - Frequently asked Questions in 2006
Scores in Standardised Exams:
GRE Graduate Record Examination, Computer Based Test. Date Given: Jan 14 2002. Verbal 680/800 Analytical 670/800 Quantitative 800/800 Total 2150/2400
TOEFL Test of English as a foreign Language, Computer Based Test. Date Given Jan 2002. Score 293/300 Essay 6.0/6.0
IELTS International English Language Testing System. Date Given Aug 18 2007, Category Academic. Result: Listening 8.5, reading 8.5, speaking 8.0, writing 8.0, overall band score 8.5 (out of 9.0 max)
GATE Graduate Aptitute Test in Engineering, Computer Science. Date Given May 2002. All India Percentile 98.24
Research Interests
My research interests lie in the fields of spiking neural networks, neural dynamics, neural engineering, sequence learning, associative memories, rank order codes (and other coding schemes for spiking neurons) and computational neuroscience. I am interested in understanding and modeling how the mammalian brain processes sequences. I am also interested in industrial applications of neural networks.